首页 > 代码库 > shell
shell
shell是使用者与计算机内核的交互工具。
shell变量:
取用方式:$变量名 ${变量名}
变量定义:变量名=变量值,变量值可以用单引号和双引号引用,单引号则$等特殊字符只有字面意义,而双引号则保持了原有的特殊意义。
$()可以得到括号内命令的结果。
变量拼接:${变量名}/path
unset可以取消变量
alias 命令1=‘命令2’
unalias 取消别名设置
history 历史命令
2> 错误输出
1> 正常输出
;间隔命令,顺序执行
&& 间隔命令 前一个命令输出true,后一个命令才执行
|| 间隔命令 前一个命令输出false,后一个命令才执行
cut -d ‘分割符‘ -f 显示第几个字段 -c 显示第几个字符
grep ‘ ‘ 抓取包括特定字符的行
grep -v ‘ ‘ 抓取不包括特定字符的行
source 在当前程序的环境中执行
sh 在子程序的环境中执行
test 或者中括号 [ ] 用于判断:
-e 是否存在
-f 是否是文件
-d 是否是目录
-r 是否有写权限
-w 读权限
-x 执行权限
两个文件间的比较
test 文件1 -nt 文件2:文件1是否比文件2新
test 文件1 -ot 文件2:文件1是否比文件2旧
test 文件1 -ef 文件2:是否是同一个文件
整数之间的判断
test n1 -eq n2 是否相等
test n1 -ne n2 是否不相等
test n1 -lt n2 是否小于
test n1 -gt n2 是否大于
test n1 -le n2 是否小于等于
test n1 -ge n2 是否大于等于
字符串的判断
test -z 空字符串返回true
test -n 空字符串返回false
test str1=str2 是否相等
test str1!=str2 不等
多个判断组合
-o 或
-a 与
!非
[]与test同理,注意变量名与符号间要留有空格
条件判断式:
if ;then
fi
if ; then
else
fi
if ;then
elif ; then
else
fi
case in
)
程序段
;;
)
程序段
;;
while [ ]
do
程序段
done
util []
do
程序段
done
for in
do
程序段
done
for ((初始值:判断条件;运行步阶))
shell