当前位置: 移动技术网 > 科技>操作系统>Linux > Shell脚本

Shell脚本

2019年07月04日  | 移动技术网科技  | 我要评论

执行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

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网