文章目录
简介
shell script 是利用shell的功能写的一个程序,这个程序是使用纯文本文件将一些shell的语法和指令写在里面,搭配正则表达式、管线命令与数据流重导向等功能,以达到我们所想要的处理目的。
注意事项
1.指令之间的空白忽略
2.从上到下,从左到右执行
3.遇到回车就尝试执行该指令串
4.可以使用\回车延伸本行到下一行
5.#后可以加批注
执行方式差异
1、直接执行
sh showname.sh
./showname.sh
//相当于在bash里起一个子进程bash执行后回到父bash,子bash的所有数据被移除
2、利用source执行,属于在父进程中执行
source showname.sh
//直接在bash中执行,脚本里设定的变量等当然有数据了
判断式
实例:
利用判断符号[]
注意
1、中括号的两端必须要有空格符来分隔
2、中括号内的变量,最好用双引号
3、中括号内的常数,最好用单或双引号
[ -z "${HOME}" ];echo $? //判断HOME这个变量是否为空
shell script的默认变量
还有:
$# //代表后接的参数个数,以上实例代表4
$@ //代表[ "$1" "$2" "$3" "$4" ]每个变量独立地用双引号括起来
$* //代表[ "$1c$2c$3c$4" ],c为分隔符,默认空格
shift n //代表拿掉前n个参数
条件判断式
if … then … else … fi
case … esac
function功能
调用时,直接在脚本中使用函数名即可fname
循环
while do done
until do done
for … do …done
实例
除了使用$(seq 1 100)还可以使用bash的内建机制{1,100}来处理
另一种写法
实例