一 变量
a=100 #a的变量就是100
echo $a #echo查看a的变量
取消变量
a=100
unset a #unset 加上变量的a,就是取消a的变量
环境变量
二 正则
重要语法
[:alnum] 代表所有的大小写英文字符和数字 0-9 A—Z a-z
[:alpha:] 代表任意英文大小写字符 A-Z a-z
[:lower:] 代表小写字符 a-z
[:upper:] 代表大写字符 A-Z
[:digit:] 代表数字 0-9
grep "[[alnum]]" xxx.txt #使用语法
三 特殊变量
重要变量方法
@ :代表 "2" "4" 之意,每个变量是独立的(用双引号括起来);
1<u>c</u>3<u>c</u>1 3 $4"之意。
四 if判断
语法
$ touch a.txt
$ test -e a.txt;echo $?
0 # 测试成功,命令返回值为 0
$ test -e s.txt;echo $?
1 # 测试失败,命令返回值为 非 0
$ test -f a.txt;echo $?
0
$ test -d a.txt;echo $?
1
文件权限侦测
语法
$ test -r a.txt; echo $?
0
$ test -x a.txt; echo $?
1
$ test -w a.txt; echo $?
0
$ test -u a.txt; echo $? # 判断 a.txt 文件是否具有 SUID 属性
1
$ cat a.txt # 查看 a.txt ,此文件内容为空
$ test -s a.txt; echo $? # 判断 a.txt 文件中有内容
1 # 命令返回值为 1 ,说明文件中没有内容
$ echo "123" > a.txt
$ test -s a.txt; echo $?
0
比较
语法
$ touch b.txt
$ ls -l a.txt
-rw-r--r-- 1 shark staff 4 12 17 22:59 a.txt
$ ls -l b.txt
-rw-r--r-- 1 shark staff 0 12 17 23:05 b.txt
$ test a.txt -nt b.txt; echo $? # 判断 a.txt 是否比 b.txt 新
1 # 返回 1, 表示判断表达式不成立
$ test b.txt -nt a.txt; echo $?
0
关于整数之间的判定
语法
$ test 10 -eq 20; echo $? #判断10是否等于20,等于的话输出0,不等于的话则输出1
1
$ n1=10
$ n2=20
$ test $n1 -eq $n2; echo $?
1
$ test $n1 -lt $n2; echo $? #判断n1是否小于n2,正确的话输出0
0
$ test $n1 -ne $n2; echo $? #判断两数值是否不相等,正确的话输出0
0
多重判定