如何在Linux中輕松修正拼寫錯(cuò)誤的Bash命令
2018-03-07 10:24:25
1801瀏覽
我知道你可以按下向上箭頭來調(diào)出你運(yùn)行過的命令,然后使用左/右鍵移動(dòng)到拼寫錯(cuò)誤的單詞,并更正拼寫錯(cuò)誤的單詞,最后按回車鍵再次運(yùn)行它,對(duì)嗎?可是等等。還有一種更簡單的方法可以糾正GNU/Linux中拼寫錯(cuò)誤的Bash命令。那么下面我們一起來看一下關(guān)于在Linux中糾正拼寫錯(cuò)誤的Bash命令。
你有沒有運(yùn)行過類似于下面的錯(cuò)誤輸入命令?
$unme-rbash:unme:commandnotfound
你注意到了嗎?上面的命令中有一個(gè)錯(cuò)誤。我在uname命令缺少了字母a。
我在很多時(shí)候犯過這種愚蠢的錯(cuò)誤。在我知道這個(gè)技巧之前,我習(xí)慣按下向上箭頭來調(diào)出命令,并轉(zhuǎn)到命令中拼寫錯(cuò)誤的單詞,糾正拼寫錯(cuò)誤,然后按回車鍵再次運(yùn)行該命令。但相信我。下面的技巧非常易于糾正你剛剛運(yùn)行的命令中的任何拼寫錯(cuò)誤。
要輕松更正上述拼寫錯(cuò)誤的命令,只需運(yùn)行:
$^nm^nam^
這會(huì)將uname命令中將nm替換為nam。很酷,是嗎?它不僅糾正錯(cuò)別字,而且還能運(yùn)行命令。查看下面的截圖。
當(dāng)你在命令中輸入錯(cuò)字時(shí)使用這個(gè)技巧。請注意,它僅適用于Bashshell。
額外提示:
你有沒有想過在使用cd命令時(shí)如何自動(dòng)糾正拼寫錯(cuò)誤?沒有么?沒關(guān)系!下面的技巧將解釋如何做到這一點(diǎn)。
這個(gè)技巧只能糾正使用cd命令時(shí)的拼寫錯(cuò)誤。
比如說,你想使用命令切換到Downloads目錄:
$cdDonloadsbash:cd:Donloads:Nosuchfileordirectory
哎呀!沒有名稱為Donloads的文件或目錄。是的,正確的名稱是Downloads。上面的命令中缺少w。
要解決此問題并在使用cd命令時(shí)自動(dòng)更正錯(cuò)誤,請編輯你的.bashrc文件:
$vi~/.bashrc
最后添加以下行。
[...]shopt-scdspell
輸入:wq保存并退出文件。
最后,運(yùn)行以下命令更新更改。
$source~/.bashrc
現(xiàn)在,如果在使用cd命令時(shí)路徑中存在任何拼寫錯(cuò)誤,它將自動(dòng)更正并進(jìn)入正確的目錄。
正如你在上面的命令中看到的那樣,我故意輸錯(cuò)(Donloads而不是Downloads),但Bash自動(dòng)檢測到正確的目錄名并cd進(jìn)入它。
Fish和Zshshell內(nèi)置的此功能。所以,如果你使用的是它們,那么你不需要這個(gè)技巧。
然而,這個(gè)技巧有一些局限性。它只適用于使用正確的大小寫。在上面的例子中,如果你輸入的是cddonloads而不是cdDonloads,它將無法識(shí)別正確的路徑。另外,如果路徑中缺少多個(gè)字母,它也不起作用。
最后想要了解更多關(guān)于Linux發(fā)展前景趨勢,請關(guān)注扣丁學(xué)堂
Linux培訓(xùn)官網(wǎng)、微信等平臺(tái),扣丁學(xué)堂IT職業(yè)在線學(xué)習(xí)教育平臺(tái)為您提供權(quán)威的Linux培訓(xùn)視頻教程系統(tǒng),通過千鋒扣丁學(xué)堂金牌講師在線錄制的
Linux視頻教程課程,讓你快速掌握Linux從入門到精通開發(fā)實(shí)戰(zhàn)技能。扣丁學(xué)堂Linux技術(shù)交流群:422345477。
【關(guān)注微信公眾號(hào)獲取更多的學(xué)習(xí)資料】
查看更多關(guān)于“Linux培訓(xùn)資訊”的相關(guān)文章>>
標(biāo)簽:
Linux命令
Linux視頻教程
Linux培訓(xùn)
Linux在線學(xué)習(xí)
Linux在線視頻
Linux命令