由于我经常通过网络将不同数量的特定文件复制到(相当复杂的)目标目录中,如果我可以使用cp's-t标志,我的生活会容易得多:有了它,您可以指定目标目录“在开始”——而不是作为最后的论点。
这样,我可以CTRL-R先复制命令,然后再CTRL-W复制以前复制的文件,而不管之前有多少文件,始终保留(复杂的)设置和目标目标系统和目录。
但是我找不到任何合适的标志,无论是 forscp还是 for rsync。(如果其中一个提供此选项,我会使用其中之一。)
做scp或rsync提供类似的东西cp -t?
在绝望中,我什至玩弄了bash的历史控制,尤其是参数提取机制:不幸的是,似乎不可能以“第x个参数到最后一个参数”的形式指定范围。but-one”,这是我需要的,因为我并不总是有参数的数量(除非我计算......)。
也许你可以定义一个环绕的函数scp:
scpt () {
scp "$@" user@host:/some/convoluted/path
}
Run Code Online (Sandbox Code Playgroud)
然后做
scpt file1
scpt /dir1/file2
Run Code Online (Sandbox Code Playgroud)
此外,通过历史交互,您可以使用 获取上一个scp命令的最后一个参数!scp:$,因此您还可以执行以下操作:
scp /dir1/file2 !scp:$
Run Code Online (Sandbox Code Playgroud)
(因为目标目录通常是最后一个)
| 归档时间: |
|
| 查看次数: |
220 次 |
| 最近记录: |