3.1.【创建shell程序步骤】
Shell命令的第一行为#!/bin/bash,表示下面的程序由bash来解析。
• #开始:注释
• 创建shell程序步骤:
1.创建脚本文件
2.修改权限
3.执行
3.2.【使用shell变量】
• shell作为程序设计语言和其它高级语言一样也提供使用和定义变量的功能
• 环境变量:shell在开始执行时已经定义好的
• 如:PS1、PS2、PATH、USER、HOME、HOSTNAME、PWD、UID、TERM
3.3.【shell变量】
• env命令:用来查看当前系统上已经定义
的环境变量
• set命令:查看shell变量的
• export 输出变量
• echo $变量名:输出变量的值
3.4.【位置变量】
• $ ./exam01 one two tree four five six
$1 表示第1 个命令参数
$2 表示第2 个命令参数
…
$n 表示第n 个命令参数
• $0 表示命令名称
$0 属于预定义变量
$0不属于位置变量
3.5.【检查磁盘空间】
## ./checkdisk.sh /home
###作用:通过du检查指定目录的使用率,并将结果寄信给root。
#!/bin/bash
#Shell script filename:checkdisk.sh
log=/var/log
du –sh $1 > $log/du.log
mail –s “disk usage ratio” root < $log/du.log
exit;
#!/bin/bash
#Shell script filename:checkdisk.sh
log=/var/log
du –sh $1 > $log/du.log
mail –s “disk usage ratio” root < $log/du.log
• ./checkdisk.sh /home
• 作用:通过du检查指定目录的使用率,并将结
果寄信给root。
------------------------------------------------------------------------------------------------------------------------------
3.6.【预定义变量】
• $#:表示位置参数的数量
• $*:表示所有位置参数的内容
• $?:表示命令执行后返回的状态,用于检查上一个命令的执行是否正确;在Linux中,命令退出状态为0表示命令正确执行,任何非0值表示命令执行错误
• $$:表示当前进程的进程号
• $0:表示当前执行的进程名
3.7.【自定义变量】
• 变量名只能由字母,数字,下划线(_)组成,且变量名不能有数字开头。
• 如,1var为非法变量
• 变量赋值:
var=abc
A=`date`
A=$var
• 查看变量值:echo $A;echo $var
• echo ${var}
3.8.【自定义变量2】
• 注意:给变量赋值时如果有空格则用引号
• name=“zhang san”或name=‘zhang san’
• 单引号之间的内容会原封不动的指定给了变量
• 删除变量:
• unset name
---------------------------------------------------------------------------------------------------