我经常使用
scp -r id@remoteserver_ip:/Data_folder/
从远程supercom服务器下载数据文件夹。
每次必须写同样的东西是相当无聊的。
有人知道使用别名易于使用此命令吗?考虑每次都会更改Data_folder
。
答案 0 :(得分:3)
你应该考虑设置ssh config:
Host myServer
HostName remoteserver_ip
User id
也可以添加identity file以避免输入密码:
Host myServer
...
IdentityFile ~/.ssh/my_id
现在你可以写:
scp -r myServer:/something
您可以 - 根据其他答案的建议 - 为您的~/.bashrc
添加一项功能:
my_scp() {
scp -r myServer:"$1"
}
然后致电:
my_scp /something
答案 1 :(得分:2)
别名无法替换单词的一部分。但是,您可以创建一个函数:
myscp () {
scp -r id@remoteserver_ip:/"$1"/
}
然后,只需致电myscp Data_folder
。
此外,scp
(至少在我的系统上)也需要目标文件夹。您可以将.
添加为函数中命令的下一个参数,或者使用"$2"
并在运行函数时在命令行上指定它。
答案 2 :(得分:2)
您无法设置别名来接受参数。因此,您必须创建一个函数,然后您才能将scp
别名为
function super_scp() {
scp -r id@remoteserver_ip:${1} ${2}
}
alias scp=super_scp
然后你就可以像:
一样使用它scp /path/to/folder /destination
答案 3 :(得分:1)
您可以在其中一个$ PATH文件夹中创建一个bash文件。
#! /bin/bash
scp -r id@remoteserver_ip:"$1" "$2"
让我们调用脚本myscp。
不是写下你写的整行,而是写
myscp /home/file.txt /home/file2.txt