Shell常见语法 [操作系统入门]
执行Shell
- 输入完整脚本文件路径即可执行。
提示:权限不够,则执行
chmod u+x 文件名
。 - 执行
bash shell文件名称
。
简单的脚本
#!/bin/bash# 上面的是指定解释器
echo $PATH
echo 路径输出完毕!
echo `date +%Y%M%d`
接受输入参数
- 执行shell文件时,在文件后使用空格隔开多个输入参数。
- shell文件中使用输入参数
参数 说明
$n
用户输入的第n个参数,从1开始
$#
用户输入的擦书总数
$*
用户输入的所有参数值,使用空格隔开
条件测试语法
- Shell 脚本中的条件测试语法可以判断表达式是否成立,
若条件成立则返回数字 0,否则便返回其他随机数值。
语法格式:
[ 条件表达式 ]
- 条件表达式两侧需要各有一个空格。
- 使用
$?
返回条件表达式结果。 - 条件表达式可以是变量也可以是具体的值。
&&
表示当前面的命令执行成功后才会执行它后面的命令。||
表示当前面的命令执行失败后才会执行它后面的命令。!
示把条件测试中的判断结果取相反值。
测试运算符
运算符 说明
-d
测试文件是否为目录类型
-e
测试文件是否存在
-f
判断是否为一般文件
-r
测试当前用户是否有权限读取
-w
测试当前用户是否有权限写入
-x
测试当前用户是否有权限执行
-eq
两个数字是否等于
-ne
两个数字是否不等于
-gt
数字A是否大于数字B
-lt
数字A是否小于数字B
-le
数字A是否等于或小于数字B
-ge
数字A是否大于或等于数字B
=
比较字符串内容是否相同
!=
比较字符串内容是否不同
-z
判断字符串内容是否为空
实例:
[ 1 -eq 2 ] || echo ‘这个说法是对的‘
流程控制语句
if语句
语法:
if 条件测试语句 then 命令...
fi
if-else语句
语法:
if 条件测试语句 then 命令...
else
命令...
fi
case语句
语法:
case 变量值 in值1)
命令..
;;
值2)
命令..
;;
...
*)
默认的命令..
;;
esac
*
代表不在所列出范围内的值。- 匹配值可以有多个。
条件循环语句
for循环
语法:
for 变量名 in 取值列表do
命令...
done
- 取值列表可以是命令查出来的值。
- 循环体内可以使用
$变量名
的形式获取当前变量的值。
while循环
语法:
while 条件测试语句do
命令...
done
Shell 常见语法
以上是 Shell常见语法 [操作系统入门] 的全部内容, 来源链接: utcz.com/z/518674.html