其他linux-shell编程如何使系统开机后默认进入字符模式_第1页
其他linux-shell编程如何使系统开机后默认进入字符模式_第2页
其他linux-shell编程如何使系统开机后默认进入字符模式_第3页
其他linux-shell编程如何使系统开机后默认进入字符模式_第4页
其他linux-shell编程如何使系统开机后默认进入字符模式_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程回顾如何使系统开机后默认进入字符模式?如何

bluetooth等服务开机后自动运行?如何查看、终止系统中的进程?使用at、crontab计划任务的区别是什么?crontab的配置记录由哪几部分组成?1技能展示理解S

的作用及分类掌握Bash的常用功能会设置和使用S

变量会编写简单的S2S

的作用及常见种类SS

的作用——命令解释器,“翻译官”–介于操作系统内核计与算机用用户户之间,负责解释命令行输入 输入控制应用程序控制Linux内核系统硬件输出输出3SKshBshCshBash兼具Bsh的语法和Csh的交互特性70年代中期诞生尔,有较强的编程功能的作用及常见种类80年代早期诞生于加利福尼亚大学,使用C语言风格,命令交互方便Bsh的升级版,Linux系统中的默认SZsh兼具各种S

程序优点,交互式操作效率更高45

/bin/csh/bin/ksh/bin/b更ash改用户登录S:/sbin/nologin需修改/etc/passwd

文件中用户记录的最后一个字段/bin/tcsh

或执行:usermod

-s

S

程序路径

用户名登录S指用户每次登录系统后自动加载的S

程序,大多数Linux系统采用

/bin/bash

作为默认登录S/etc/s s

文件记录了系统支持的有效登录S[ro如ot@何lo切cal换hosSt

~h]#eclal环t

e境tc/s

s/bin/s临h

时切换:直接执行其他S

程序,例如ksh、zsh等S

环境的切换6Bash的常用功能Tab键自动补齐命令编辑快捷键命令历史命令别名标准输入输出重定向操作管道操作Bash令历史–执行:history-c命令历史–

保存用户曾经执行过

令操作存放位置

/

bash history

文件[root@localhost

root]#

history……556useraddjerry557passwdjerry558crontab-e

-u

jerry559crontab-l

-u

jerry7Bash

令历史令调用历史命令!n:执行历史记录中的第n条命令!str:执行历史记录中以“str”开头设置记录历史命令的条数–修改HISTSIZE

参数(默认为1000条)[root@localhost

root]#

!562crontab

-l

-u

jerryno

crontab

for

jerry[root@localhost

~]#

vi

/etc/profileHISTSIZE=20089Bash

令别名unalias -a命令别名为使用频率较高的复杂命令行设置简短的调用名称存放位置:~/.bashrc[root@localhost

~]#

aliasalias

cp='cp

-i'alias

l.='ls

-d

.*

--color=tty'alias

ll='ls

-l

--color=tty'alias

ls='ls

--color=tty'alias

mv='mv

-i'alias

rm='rm-i'……Bash的标准输入输出交互式硬件设备标准输入:从该设备接收用户输入的数据标准输出:通过该设备向用户输出数据标准错误:通过该设备报告执行出错信息类型设备文件文件描述默认设备标准输入/dev/stdin0键盘标准输出/dev/stdout1显示器标准错误输出/dev/stderr2显示器1011Bash的重定向操作类型操作符用途重向标准输入<将命令中接收输入的途径由默认的键盘更改为指定的文件重定向标准输出>将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上>>将命令执行的结果追加输出到指定文件重定向标准错误2>清空指定文件的内容,并将标准错误信息保存到该文件中2>>将标准错误信息追加输出到指定的文件中重定向标准输出和标准错误&>将标准输出、标准错误的内容全部保存到指定的文件中,而不是直接显示在屏幕上Bash的管道操作管道操作符号“|”连接左右两个命令,将左侧

令输出的结果,作为右侧命令的输入(处理对象)格式:cmd1

|

cmd2 [...

|

cmdn][root@localhost

~]#

free

-m

|

head

-2totalMem:used

free

shared503

339

163buffers0cached87

199[root@localhost

~]#free

-m

|

grep

"Mem"

|

awk

'{print

$2,$4}'503

163awk,以空格或制表位为分隔,输出指定第n列数据12S

变量的应用S

变量为灵活管理Linux系统提供特定参数,有两层意思:变量名:使用固定的名称,由系统预设或用户定义变量值:能够根据用户设置、系统环境变化而变化S

变量的种类用户自定义变量:由用户自己定义、修改和使用环境变量:由

,用于设置用户的S

工作环境,只有极少数的变量用户可以修改预定义变量:Bash预定义的特殊变量,不能直接修改位置变量:通过命令行给程序传递执行参数1314变量的赋值与定义新的变量变量名要以英文字母或下划线开头,区分大小写格式:变量名=变量值查看变量的值格式:echo

$变量名[root@localhost

~]#

DAY=Sunday[root@localhost

~]#

echo

$DAYSunday指定通过$符号名称的变量值变量的赋值与从键盘输入内容为变量赋值格式:

read [-p "信息"]

变量名结合不同的引号为变量赋值双引号“”:允许通过$符号其他变量值单引号

其他变量值,$视为普通字符反撇号`

`

:将命令执行的结果输出给变量15变量的赋值与设置变量的作用范围[root@localhost

~]#

echo

$FILESVR[root@localhost

~]#

export

FILESVR[root@localhost

~]#

zsh[root@localhost]~#

echo

$FILESVR[root@localhost]~#

exit[root@localhost

root]#

unset

FILESVR[root@localhost

root]#

echo

$_abc[root@localhost

root]#输出为全局变量清除该变量内容1617数值变量的运算计算整数表达式的运算结果格式:expr

变量1

运算符

变量2 ...[运算符变量n]expr的常用运算符加法运算:+减法运算:-乘法运算:\*除法运算:/求模(取余)运算:%环境变量环境变量配置文件全局配置文件:/etc/profile用户配置文件:~/.bash_profile[root@看localhost

root量]#set……S

=/bin/bashTERM=xtermUID=0USER=rootconsoletype=pty18环境变量常见的环境变量:$USER

、$LOGNAME$UID

$S

、$HOME$PWD、$PATH[root@localhost

~]#

echo

$PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin[root@localhost

~]#

PATH="/opt/bin:$PATH"[root@localhost

~]#

echo

$PATH/opt/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin19位置变量20表示为$n,n为1~9之间的数字$6,第6个位置参数[root@localhost

~]#

./exam01

one

two

three

four

five

six$1,第1个位置参数

$2,第2个位置参数预定义变量$0:当前执行的进[root@localhost

~]#

bash[root@localhost

~]#

echo

$0

$$bash

5887[root@localhost

~]#exxitbash:

exxit:

command

not

found[root@localhost

~]#

echo

$?127[root@localhost

~]#

exitexit[root@localhost

~]#

echo

$?0查看当前所执行进程的名称、PID号执行一条错误命令返回非0值,表示上一条命令异常返回0值,表示上一条命令正常2122小结请思考:RHEL5系统中默认使用哪种S

?如何更改用户的登录S

?的变量应用中,三种引号的作用有何区在S别?环境变量PWD的作用是什么,如何查看该变量的值?变量A的值为13,B的值为17,如何计算其乘积?–位置变量$1~$9的作用是什么?S

的概念S用途:完成特定的、较复杂的系统管理任务格式:集中保存多条Linux命令,普通文本文件执行方式:按照预设的顺序依次解释执行23编写可执行的S[root@localhost

~]#

vi

repboot.sh#!/bin/bash#

To

show

usage

of

/boot

directory

and

mode

of

kernelfile.echo

"Useage

of

/boot:

"du

-sh

/bootecho

"The

mode

of

kernel

file:"ls

-lh

/boot/vmlinuz-*[root@localhost

~]# od

a+x

repboot.sh24运行S程序文件直接执行具有“x”权限的–

例如:./repboot.sh使用指定的解释器程序执行内容–

例如:bash

repboot.sh、sh

repboot.sh通过source命令(或.)–

例如:souce

repboot.sh

.内容执行o.sh25S

应用示例示例1:每周五17:30清理FTP服务器的公共共享检查

/var/ftp/pub/

,将其中所有子及文件的详细列表、当时的时间信息追加保存到/var/log/pubdir.log

日志文件中,然后清空该[root@localhost

~]#

vi

/opt/ftpclean.sh#!/bin/bashdate >>

/var/log/pubdir.logls

-lhR

/var/ftp/pub >>

/var/log/pubdir.logrm

-rf

/var/ftp/pub/*[root@localhost

~]#

crontab

-e2

30

17

*

*

5

/opt/ftpclean.shS

应用示例[root@localhost

~]#

vi

/opt/dbbak.sh#!/bin/bashDAY=`date

+%Y%m%d`SIZE=`du

-sh

/var/lib/mysql`echo

"Date:

$DAY"

>>

/tmp/dbinfo.txtecho

"Data

Size:

$Size"

>>

/tmp/dbinfo.txtcd

/opt/dbbaktar

zcvf

mysqlbak-${DAY}.tar.gz

/var/lib/mysql

/tmp/dbinfo.txtrm

-f/tmp/dbinfo.txt[root@localhost

~]#

crontab

-e55

23

*/3

*

*

/opt/dbbak.sh27实验案例1:定制root用户的S

环境需求描述使root用户能通过“crond

start”形式控制相应系统服务的状态,而无需使用service命令或绝对路径将root用户

令历史记录限制为50条添加一个命令别名lh,用于以长格式并使用K、M等容量单位显示

及文件列表信息每次root用户登陆到时,自动报告当前登录的用户数、打开的进程数、剩余可用内存、剩余交换空间练习重定向、变量操作、应用等相关知识2829实验案例1:定制root用户的S

环境实现思路修改“/root/.bash_profile”文件

在环境变量PATH中添加“/etc/rc.d/init.d”容的内设置HISTSIZE变量的值为50将PATH、HISTSIZE变量输出为全局变量。编写登录欢迎

文件

e.root使用who、ps、wc命令及管道操作统计登录用户数、进程数使用free、awk命令结合管道操作提取剩余可用内存、剩余交换空间信息实验案例1:定制root用户的S

环境实现思路–修改“~/.bashrc”文件设置命令别名lh添加执行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论