shell编程笔记

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参数左移







你可能感兴趣的:(shell编程笔记)