shell脚本
脚本语言是像剧本一样教计算机办某个事情的语言
脚本语言不需要编译,通常是解释运行
shell指的是一种应用程序,该应用程序提供了一个界面,用户可以通过这个界面访问操作系统内核的服务,Ken Thompson的sh是第一种Unix Shell,Windows Explorer是一个典型的图形界面shell,通常大家在交流时所说的shell指的是shell脚本。
#!:告诉系统其后所跟的路径即是解释此脚本文件的shell程序
运行shell脚本有3种方法:
1.作为可执行程序
chmod +x ./test.sh #使脚本具有可执行的权限
执行脚本的时候一定要写成./test.sh,而不是test.sh,运行其他的二进制程序也是一样的,直接写成test.sh,Linux系统就会去PATH里寻找有没有叫test.sh的,而默认情况下,只有/bin,/sbin,/usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是找不到命令的,要用./test.sh告诉系统就在当前目录寻找。
2.作为解释器参数
/bin/bash test.sh
利用这种方式运行脚本,就不需要再第一行制定解释器信息,写了也没用
3.source命令用法
source test.sh #通常用.来代替source
利用这种方式运行脚本,就不需要在第一行制定解释器信息,写了也没用
set -e #在set -e之后一旦有代码返回非零值,脚本马上退出
-z #判断变量的值是否为空
显示脚本运行是的冗余输出,在set命令之后执行的每一条命令以及加载命令行中的任何参数都会显示出来,每一行都会加上加号(+),提示它是跟踪输出的标识:
set -x :开启
set +x :关闭
set -o :查看