1、查看当前系统已经设置的变量:set
删除一个变量 unset 变量名
例如:
2、声明环境变量:export
添加环境变量到PATH:export PATH=“\usr\zlp”:$PATH
3、PS1 提示符变量
参数:
例如:
shell域分隔符:IFS 默认为空格
export IFS=:
echo $PATH
2、位置变量和特殊变量
例如:ls -l file1 file2 file3$0:这个程序的文件名 ls -l
$n 这个程序的第n个参数值,n=1-9
3、返回值对应关系:
0表示命令执行成功 非0表示执行不成功
$* 这个程序的所有参数
$# 这个程序参数的个数
$$ 这个程序pid
$! 执行上一个后台命令的pid
$? 执行上一个命令的返回值(0 非0)
if [ "22" -lt "33" ] then //注意空格
如果if和then写在统一行,中间需要加入一个;分号
if [ ] ; hen
else
fi
read命令:从键盘读入数据,赋给变量
read USERNAME
''单引号 原样输出
“”引号 变量输出
shell运行的参数(-x,-n)
sh -x read.sh-x 执行脚本,每行的代码都显示出来
sh -n read.sh
-n 不执行脚本,验证语法是否有错误。
expr命令:对整数型变量进行算术运算
expr 3 + 5 +号两边有空格否则原样输出
乘法 * 需要使用转义符,正确写法 expr 3 \* 5
除法 expr 100 / 3
a=10
b=20
c=30
value1 = ‘expr $a + $b + $c’
变量测试语句
用于测试变量是否相等,是否为空,文件类型等
test 表达式
test str1 = str2
test str1 != str2
test int1 -eq int2
test int1 -ne int2
test -x file 测试文件是否可以执行
域分隔符‘命令’awk默认为空格
用-F指定分隔方式 比如 awk -F: 表示用:进行分隔
检测系统中UID为0的用户
awk -F:'$3==0{print $1}'/etc/passwd
case esac语句:
默认用*
屏蔽交互式输入方式
echo 12345 |passwd --stdin shedon
unit条件为假时,执行
while true
do
break
done
shift参数左移