
系统变量
$n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2$? 上个命令的退出状态,或函数的返回值。成功返回0,失败返回1$# 传递给脚本或函数的参数个数$* 所有这些参数都被双引号引住。若一个脚本接收两个参数,$*等于$1$2$0 正在被执行命令的名字。对于shell脚本而言,这是被激活命令的路径$@ 被双引号(” “)包含时,与 $* 稍有不同。若一个脚本接收到两个参数,$@等价于$1$2$$ 当前shell的进程号。对于shell脚本,这是其正在执行时的进程ID$! 前一个后台命令的进程号
文件或目录判断
-b file 若文件存在且是一个块特殊文件,则为真-c file 若文件存在且是一个字符特殊文件,则为真-d file 若文件存在且是一个目录,则为真-e file 若文件存在,则为真-f file 若文件存在且是一个规则文件,则为真-g file 若文件存在且设置了SGID位的值,则为真-h file 若文件是软链接,则为真-k file 若文件存在且设置了”sticky”位的值-L file 若文件为符号链接,则为真-p file 若文件存在且为一已命名管道,则为真-r file 若文件可读,则为真-s file 判断文件是否存在,且是否为非空,不为空,则为真-S file判断文件是否存在,且是否为套接字文件-t file 文件描述符(默认为1)指定的设备为终端时为真-u file 若文件存在且设置了SUID位,则为真-w file 若文件可写,则为真-x file 若文件可执行,则为真[ file1 -nt file2 ] 若file1比file2新,或file1存在但file2不存在,则为真[ file1 -ot file2 ] 若file1比file2老,或file2存在但file1不存在,则为真[ file1 -ef file2 ] 若file1和file2指向相同的设备和节点号则返回,为真
整数判断
-eq 两数相等,则为真 例:if [ "$a" -eq "$b" ]-ne 两数不相等,则为真 例:if [ "$a" -ne "$b" ]-gt a大于b,则为真 例:if [ "$a" -gt "$b" ]-ge 大于或等于,则为真 例:if [ "$a" -ge "$b" ]-lt a小于b,则为真 例:if [ "$a" -lt "$b" ]-le a小于或等于b,则为真 例:if [ "$a" -le "$b" ]< 小于(需双括号) 例:(("$a" < "$b"))<= 小于等于(需双括号) 例:(("$a" 大于(需双括号) 例:(("$a" > "$b"))>= 大于等于(需双括号) 例:(("$a" >= "$b"))小数据比较可使用AWK。
逻辑运算判断符
! [ ! false ] 返回true 逻辑否,条件为假,结果为真-a [ $a -lt 2 -a $b -gt 5 ] 返回true 逻辑与,两个表达式都为真,则为真-o [ $a -lt 2 -o $b -gt 5 ] 返回true 逻辑或,只要有一个表达式为true,则为真[ ] || [ ] 用OR来合并两个条件[ ] && [ ] 用AND来合并两个条件
字符串判断
== 若两个字符串相同则为真,与=等价 例:[ "str1" = "str2" ]!= 若字符串不相同则为真 例:[ "str1" != "str2" ]< 若str1字典排序在str2前则为真 例:[[ "str1" 若str1字典排序在str2后则为真 例:[ "str1" > "str2" ]-n 若str长度非零则为真,即非空 例:[ -n "str1" ]-z 若file长度为零,即空,则为真 例:[ -z "str1" ]
注意:在[]结构中”
Shell脚本编写基础 中文WORD版
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统
24 查看详情
以上就是详解:Shell脚本变量判断参数命令的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/940596.html
微信扫一扫
支付宝扫一扫