我透過 Powershell 使用 Windows 10(家用版)附帶的 OpenSSH 用戶端。如何重複最後一個指令?我習慣於使用向上鍵瀏覽最後執行的命令,但這不起作用,使用任何箭頭鍵都會導致命令列中顯示奇怪的字元(即 ^[[A )。其他 Linux 相關指令,例如 !!,也不行...知道嗎?
編輯:問題似乎是伺服器端(Unbuntu)而不是 Windows 上的 OpenSSH 用戶端(Putty 也出現同樣的問題)。所以現在的問題是:如何在遠端伺服器上透過按鍵啟動最後一個命令並透過選項卡自動完成。
答案1
看起來您可能有一個sh
預設的 shell,而不是bash
.sh
命令列編輯功能非常有限,且不支援使用向上/向下箭頭呼叫先前的命令。
若要檢查這一點,請鍵入以下命令:
grep '^username:' /etc/passwd
你當然應該替換的地方使用者名稱與您在 Linux 系統中使用的實際使用者名稱。
你應該看到這樣的一行(在我的例子中):
raj:x:1000:1000:Jarek,,,:/home/raj:/bin/bash
您的預設 shell 顯示在該行的末尾。如果像/bin/bash
上面那樣,向上/向下箭頭應該可以工作。如果它們不起作用,則一定有人弄亂了 shell 啟動腳本(通常.profile
是.bashrc
檔案)。
/bin/bash
如果您的 shell 與(例如)不同,/bin/sh
您可以嘗試更改它。鍵入命令chsh
(它會要求您輸入密碼)並鍵入/bin/bash
新的 shell。登入新會話後,您的新 shell 應該處於活動狀態。