gpt4 book ai didi

linux - scp 来自源和目标的不同名称的多个文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:07 25 4
gpt4 key购买 nike

我正在尝试从源到目标 scp 多个文件。情况是源文件名与目标文件不同

这是我正在尝试执行的 SCP 命令

scp /u07/retail/Bundle_de.properties rgbu_fc@<fc_host>:/u01/projects/MultiSolutionBundle_de.properties

基本上我确实有超过 7 个文件,我正在尝试单独的 scps 来实现它。所以我想将它合并到一个 scp 中以传输所有文件

我在这里尝试的一些 scp 命令 -

$  scp /u07/retail/Bundle_de.properties rgbu_fc@<fc_host>:/u01/projects/MultiSolutionBundle_de.properties

$ scp /u07/retail/Bundle_as.properties rgbu_fc@<fc_host>:/u01/projects/MultiSolutionBundle_as.properties

$ scp /u07/retail/Bundle_pt.properties rgbu_fc@<fc_host>:/u01/projects/MultiSolutionBundle_pt.properties

$ scp /u07/retail/Bundle_op.properties rgbu_fc@<fc_host>:/u01/projects/MultiSolutionBundle_op.properties

我正在寻找一种解决方案,通过它我可以在单个 scp 命令中获得上述 4 个文件。

最佳答案

在任何标准 POSIX shell 中看起来像一个简单的循环:

for i in de as pt op
do scp "/u07/retail/Bundle_$i.properties" "rgbu_fc@<fc_host>:/u01/projects/MultiSolutionBundle_$i.properties"
done

或者,您可以在本地为文件命名(复制、链接或移动),然后使用通配符传输它们:

dir=$(mktemp -d)
for i in de as pt op
do cp "/u07/retail/Bundle_$i.properties" "$dir/MultiSolutionBundle_$i.properties"
done
scp "$dir"/* "rgbu_fc@<fc_host>:/u01/projects/"
rm -rf "$dir"

关于linux - scp 来自源和目标的不同名称的多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41632945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com