Linux
SCP 文件名選項卡完成
我經常使用 SCP 在伺服器之間移動文件,我聽說如果你使用公鑰,你可以在遠端伺服器上使用 tab-completion,但到目前為止我還沒有運氣。
我想要完成的是以下內容:
scp -r remote.ip.address:/remote/dir/folder<TAB> /local/destiation/
的
ls
遠端伺服器上的一個/dir/
將顯示 3 個文件夾:/remote/dir/folder_1 /remote/dir/folder_2 /remote/dir/folder_3
我希望 SCP 顯示哪些文件夾匹配(如果有),就像導航本地文件系統時的正常路徑完成一樣。選項卡完成確實適用於
scp
命令行中的本地路徑,但我注意到當遠端機器的路徑與本地路徑匹配時(即:“~/”),它會從本地文件系統完成/建議文件/文件夾而不是比遙控器。執行以下程式碼可實現無密碼登錄:
`ssh remote.ip.address`
…所以我知道密鑰設置正確。關於如何使它工作的任何想法?
你用的是哪個外殼?如果您使用的是 bash,則可能需要在 bash 中啟用“高級”完成…
if [ -f /etc/bash_completion ]; then . /etc/bash_completion fi
在你的 ~/.bashrc
在 OSX 上,您可以執行以下操作:
$ sudo port install bash-completion
在您的 ~/.profile 添加:
if [ -f /opt/local/etc/bash_completion ]; then . /opt/local/etc/bash_completion fi
如果有人想使用 rkthkr 的方法為 Mac OSX Mountain Lion 執行此操作,他們必須先安裝 Mac Ports ( http://www.macports.org/install.php ),然後執行他提到的命令:
$ sudo port install bash-completion
然後按照以下說明配置他們的終端應用程序:https ://trac.macports.org/wiki/howto/bash-completion