2009年7月6日 星期一

[bash/tcsh] 按上鍵與開頭字,搜尋與顯示上次執行指令

最近比較常用 tcsh 當作 FreeBSD 的開發環境,甚至其它常用的 Linux 亦是如此。然後就會有個需求,希望按"上”時,能夠自動顯示上一個已執行的指令,理論上這都很直觀,好像預設也是這樣,但如果想要做到搜尋的功能,那就要多一些設定。


例如依序打了三道指令



  1. # ls -la

  2. # vim .bashrc

  3. # cat .bashrc


如果只是用單純的 history 功能,接下來我只要按"上”鍵時,此時會自動顯示上一道執行指令,即 cat .bashrc 。但如果我先打了 l 再按"上"鍵時,想要它會去找到 ls -la 這道指令,那就要多做些設定,細節請參考這篇文章:bash 記憶指令 For Linux


設定方式:



  • # vim ~/.bashrc

    • bind '"\x1b\x5b\x41":history-search-backward'
      bind '"\x1b\x5b\x42":history-search-forward'




另外,關於 tcsh 的設定:



  • # vim ~/.cshrc

    • bindkey "^W" backward-delete-word
      bindkey -k up history-search-backward
      bindkey -k down history-search-forward




沒有留言:

張貼留言