我经常使用SCP在服务器之间移动文件,我听说如果你使用公钥,你可以在远程服务器上使用tab-completion,但到目前为止我没有运气.
我想要完成的是以下内容:
scp -r remote.ip.address:/remote/dir/folder<TAB> /local/destiation/
/remote/dir/folder_1 /remote/dir/folder_2 /remote/dir/folder_3
我希望SCP能够显示哪些文件夹匹配(如果有的话),就像导航本地文件系统时的正常路径完成一样.选项卡完成在scp命令行中的本地路径上有效,但是我注意到当远程机器的路径与本地路径匹配时(即:“〜/”),它完成/建议来自本地文件系统的文件/文件夹而不是遥控器.
运行以下工作以进行无密码登录:
`ssh remote.ip.address`
…所以我知道键设置正确.关于如何使这个工作的任何想法?
解决方法
你用的是哪个shell?如果你使用bash,你可能需要
在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