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

Shell 常见语法

以上是 Shell常见语法 [操作系统入门] 的全部内容, 来源链接: utcz.com/z/518674.html

回到顶部