眾所周知,如果沒有 cd 命令,我們無法 Linux 中切換目錄。這個(gè)沒錯(cuò),但我們有一個(gè)名為 shopt 的 Linux 內(nèi)置命令能幫助我們解決這個(gè)問題。
shopt 是一個(gè) shell 內(nèi)置命令,用于設(shè)置和取消設(shè)置各種 bash shell 選項(xiàng)linux命令,由于它已安裝,因此我們不需要再次安裝它。
是的,我們可以在啟用此選項(xiàng)后,可以不使用 cd 命令切換目錄。
我們將在本文中向你展示如何操作。這是一個(gè)小的調(diào)整,但對(duì)于那些從 Windows 遷移到 Linux 的新手來說非常有用。
這對(duì) Linux 管理員沒用,因?yàn)槲覀儾粫?huì)在沒有 cd 命令的情況下切換到該目錄,因?yàn)槲覀儗?duì)此有經(jīng)驗(yàn)。
如果你嘗試在沒有 cd 命令的情況下切換 Linux 的目錄/文件夾,你將看到以下錯(cuò)誤消息。這在 Linux 中很常見。
$ Documents/bash: Documents/: Is a directory
為此,我們需要在用戶 .bashrc 中追加以下值。
什么是 .bashrc ?
.bashrc 是一個(gè) shell 腳本,每次用戶以交互模式打開新 shell 時(shí)都會(huì)運(yùn)行該腳本。
你可以在該文件中添加要在命令提示符下輸入的任何命令。
.bashrc 文件本身包含終端會(huì)話的一系列配置。包括設(shè)置和啟用:著色、補(bǔ)全,shell 歷史,命令別名等。
$ vi ~/.bashrc
加入這一行:
shopt -s autocd
運(yùn)行以下命令使更改生效。
$ source ~/.bashrc
我們已完成所有配置。簡單地對(duì)此進(jìn)行測試以確認(rèn)這是否有效。
$ Documents/cd -- Documents/$ daygeek/cd -- daygeek/$ /home/daygeek/Documents/daygeekcd -- /home/daygeek/Documents/daygeek$ pwd/home/daygeek/Documents/daygeek
是的,它正如預(yù)期的那樣正常工作。
而且,它在 fish shell 中工作正常,而無需對(duì).bashrc進(jìn)行任何更改。
如果要暫時(shí)執(zhí)行此操作,請(qǐng)使用以下命令(設(shè)置或取消設(shè)置)。重啟系統(tǒng)時(shí),它將消失。
# shopt -s autocd# shopt | grep autocdautocd on# shopt -u autocd# shopt | grep autocdautocd off
shopt 命令提供了許多其他選項(xiàng)linux命令,如果要驗(yàn)證這些選項(xiàng),請(qǐng)運(yùn)行以下命令。