Shell常见语法

执行 Shell

  1. 输入完整脚本文件路径即可执行。
    提示:权限不够,则执行chmod u+x 文件名
  2. 执行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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值