2014-09-18 55 views
0

我正在ssh進入遠程機器,當我嘗試在反向搜索的linux終端中搜索我的歷史記錄時,什麼都沒發生。我按我通常在我的機器上按ctrl-r,但沒有出現提示。終端似乎並沒有反向搜索(ctrl-r什麼都不做)

任何想法?我如何檢查ctrl-r的鍵綁定?如果他們沒有設置,我如何設置他們?我是否需要apt-get reverse-i-search功能?

謝謝!

回答

1

要使用ctrl-r你的shell需要使用readline(或類似的東西),你的歷史應該被收集。

  • 所以你應該驗證你的shell例如sh不支持這個。
  • 你應該檢查它的歷史收集。例如用bash外殼:echo $HISTFILE

我認爲這些可能是主要原因。

希望只需輸入bash,你可以切換到一個合適的shell來支持它。

+0

謝謝!不幸的是,這突出了我對Linux的無知(即'sh'和'bash'之間的區別),並引發了另一個問題。當我進入遠程機器時,我在終端上看到了什麼?它不是'sh'或'bash',那它是什麼? – 2014-09-18 18:53:20

+0

我想我回答了我自己的問題。它取決於具體的機器和設置的偏好。我使用'echo $ SHELL'命令並得到/ bin/tcsh。我猜'tcsh'也是一個shell? – 2014-09-18 19:21:42

+0

是的。你可以通過輸入'bash'來測試系統上是否安裝了bash,並希望啓動一個新的shell。如果沒有,那麼你必須要求系統管理員來安裝它。也許zsh也值得一試。 – 2014-09-18 20:59:56