从多个目录复制文件并将其粘贴到多个目录中

从多个目录复制文件并将其粘贴到多个目录中

我有一个目录“/data/archive

该目录下有 8 个不同的子目录。

eg : /data/archive/a
/data/archive/b and so on

这些子目录下的文件的名称中附加了日期,因此我仅复制所需日期的文件。

目前我正在做的是这样的:

cd a
scp *20210826* user@server:/data/20210826_inputfiles/a
cd b
scp *20210826* user@server:/data/20210826_inputfiles/b

是否可以以一种不必逐一移动每个目录的方式对其进行编码?

对此的任何帮助都会非常有帮助。

提前致谢!

答案1

最明显的是:

for dir in a b b d e f g ; do
    cd $dir
    scp *20210826* user@server:/data/20210826_inputfiles/$dir
    cd ..
done

(我添加了cd ..因为这对我来说似乎合乎逻辑)

您也可以将其放入脚本中。这需要重新思考:

  • 您想将日期作为脚本的参数吗?
  • 您想让脚本自行确定目录,还是将它们硬编码在脚本中?

等等。

相关内容