bash是一个为GNU计划编写的Unix shell。它的名字是一系列缩写:Bourne-Again SHell — 这是关于Bourne shell(sh)的一个双关语(Bourne again/born again)。
参数说明
-c:若用-c参数,则bash从字符串中读入命令,如果字符串后还有变量就被设定为从$0 开始的位置参数。
-n:检测脚本是否正确,并不执行脚本
-i:若用-i参数,则bash是交互的。
-s:若用-s参数,则bash从标准输入中读入命令(在执行完-c带的命令之后。)直到输入exit。
-x:执行脚本,输出执行过程,调试利器
-:单一的号表明参数执行完毕,并且屏蔽此后所跟参数,后面的所有变量都被看作是文件名。
-norc:如果bash是交互的,则不执行个人初始化文件:-/.bashrc,如果bash作为sh来运行,这个参数缺省是关闭的。
-noprofile:不执行系统范围的启动文件/etc/profile也不执行个人的启动文件-/.bash_profile ,-/.bash_login或-/.profile,缺省情况下,bash作为登录的shell时以这些文件作为启动 文件。
--refile文件名:如果bash是交互的,则以此文件作为bash的启动文件。替代-/.bashrc。
-version:在bash开始时显示此bash的版本号。
-quiet:不显示版本号和其他信息,这是缺省值。
-login:激活bash,伪装为登录shell。
-nobraceexpansion:不执行大括号扩展。
-nolineediting:在交互状态下不使用GNU的readline库去读取命令。即取消了命令行编辑功能。
-posix:改变bash的行为,使其符合Posix 1003.2规定的标准。
实例
# bash -n database.sh #检测脚本是否正确,并不执行
# bash -x database.sh #执行脚本,输出执行过程