可以通過打開或者關閉Bourne Again Shell的功能的方式來控制它的行為。不同的功能使用不同的方法開啟和關閉。內置命令set控制著一組功能,而內置命令shopt控制另外一組命令。還可以調用bash在命令行中控制很多功能。
1. set ±o:開啟和關閉shell特性
通過使用-o或者+o選項,內置命令set(tcsh中有一個內置命令set,但是它的工作方式不同)可開啟、關閉並列出某些bash特性。舉例來說,下面的命令將開啟noclobber特性:
$ set -o noclobber
使用下面的命令可以關閉這項特性(默認):
$ set +o noclobber
2. shopt:開啟和關閉shell特性
內置命令shopt(shell option)開啟、關閉和列出那些控制著shell行為的某些bash特性。舉例來說,下面的命令將使bash在擴展模糊文件引用時,包含那些以句號(。)開頭的文件名,-s表示設置:
$ shopt -s dotglob
通過下面的命令可將這項特性關閉(默認),-u表示取消設置:
$ shopt -u dotglob
如果只將特性的名稱作為shopt唯一的參數,shell顯示該特性是如何設置的:
$ shopt dotglob
dotglob off
命令shopt不帶任何選項或者參數時,將列出由shopt控制的那些特性及其狀態。命令shopt -s不帶參數時,將列出那些由shopt控制並設置為開啟的特性。命令shopt –u將列出那些被取消或者關閉的bash特性