Linux学习之路(五)--shell脚本
创建一个脚本文件并用vim打开
vim example.sh
写入脚本
1.申明执行脚本的解释器的位置,再此用bash解释器
#!/bin/bash
2.创建一个变量
variable为变量名,变量的值由双引号包括
variable="content"
3.使用用户在执行脚本时传入的参数
1).用户传入参数,系列命令向脚本传入了两个参数,参数之间有一个空格。
bash ./example.sh parameterone parametertwo
2).脚本中使用参数
第一个参数是文件名,即
./example.sh
用
$0
表示
依次类推,使用parameterone这个参数即是$1
例如编写一个脚本打印用户传入的第一个参数
#!/bin/bash
echo "$1"
相应的执行脚本的命令为
bash ./example.sh test
执行脚本后的截图
脚本中条件表达式与 && || ! 三种逻辑运算符的使用
1.条件表达式使用语法
[ content ]
注意:content左右必须有一个空格
表达式中的参数:
-d 测试文件是否为目录类型
-e 测试文件是否存在
-f 判断是否为一般文件
-r 测试当前用户是否有权限读取
-w 测试当前用户是否有权限写入
-x 测试当前用户是否有权限执行
如判断当前目录是否存在example.sh文件
[ -e ./example.sh ]
该命令执行后不会打印任何消息,但有一个返回值,返回0表示真(存在),返回1表示假。
使用下列命令获取上一步执行表达式的返回值
echo $?
截图:
2.条件表达式中的整数比较运算符
参数:
-eq(equal) 是否等于
-ne(not equal) 是否不等于
-gt 是否大于
-lt 是否小于-le 是否等于或小于
-ge 是否大于或等于
例如编写一个bigger.sh脚本判断用户传入脚本的两个参数谁大,输出大的值
#!/bin/bash
[ $1 -gt $2 ] && echo "the bigger number is $1"
[ $1 -gt $2 ] || echo "the bigger number is $2"
或连写逻辑运算符
#!/bin/bash
[ $1 -gt $2 ] && echo "the bigger number is $1" || echo "the bigger number is $2"
3.&&
使用方法:第一个命令 && 第二个命令
语法:当第一个命令执行成功或返回真,即零值时,执行第二个命令
例如判断当前目录是否存在example.sh文件,如果存在则输出exist,否则不执行任何操作
[ -e example.sh ] && echo "exist"
截图:
4. ||
与 && 语义相反
如判断当前目录是否存在example.sh文件,如果不存在则输出none,否则不执行任何操作
[ -e example.sh ] || echo "none"
截图:
5. !
略
更改普通脚本文件为可执行脚本文件
当要执行我们自己编写的脚本文件时,需要用bash命令,原因是自己创建的脚本文件默认无执行权限。linux 的终端中允许直接键入可执行文件的文件名来执行文件。
赋予example.sh文件可执行权限
chmod u+x example.sh
现在可以这样执行脚本文件了
./example.sh