bash 是一个为gnu计划编写的unix shell。它的名字是一系列缩写:bourne-again shell — 这是关于bourne shell(sh)的一个双关语(bourne again / born again)。
bash是大多数linux系统以及mac os x默认的shell,它能运行于大多数类unix风格的操作系统之上,甚至被移植到了microsoft windows上的cygwin系统中,以实现windows的posix虚拟接口。此外,它也被djgpp项目移植到了ms-dos上。
语法格式:bash [参数] [文件]
常用参数:
-n | 检测脚本是否正确,并不执行脚本 |
-x | 执行脚本,输出执行过程 |
-c | bash从字符串中读入命令,如果字符串后还有变量就被设定为从$0开始的位置参数 |
参考实例
使用-n参数检查脚本语法时候正确:
[root@linuxcool ~]# bash -n linuxcool.sh
使用-x参数执行linuxcool.sh脚本并输出执行过程:
[root@linuxcool ~]# bash -x linuxcool.sh ifconfig eth0: flags=4163 mtu 1500 inet 192.168.3.21 netmask 255.255.255.0 broadcast 192.168.3.255 inet6 fe80::20c:29ff:fe73:4b2f prefixlen 64 scopeid 0x20 ether 00:0c:29:73:4b:2f txqueuelen 1000 (ethernet) rx packets 1175439 bytes 578279763 (551.4 mib) rx errors 0 dropped 1574 overruns 0 frame 0 tx packets 165889 bytes 54096266 (51.5 mib) tx errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1 (local loopback) rx packets 538814 bytes 310506969 (296.1 mib) rx errors 0 dropped 0 overruns 0 frame 0 tx packets 538814 bytes 310506969 (296.1 mib) tx errors 0 dropped 0 overruns 0 carrier 0 collisions 0