【发布时间】:2016-04-19 08:14:25
【问题描述】:
我有一组文件夹,在每个文件夹中我有几个子文件夹。在每个子文件夹中都有一个名为 result.txt 的文件,我需要将所有 result.txt 复制到其他位置重命名结果文件。
文件夹:
abc1
efg1
doc2
ghih
子文件夹:
在aaa1
1.abc1.merged
2.abc1.merged
3.abc1.merged
4.abc1.merged
在efg1
1.efg1.merged
2.efg1.merged
3.efg1.merged
4.efg1.merged
5.efg1.merged
...
...
等等 所有子文件夹都在一个不同的文件夹中包含 result.txt,所有结果文件都重命名为 result1.txt、result2.txt 等。
我尝试将子文件夹的名称设置为shell脚本中的变量,并循环进入子文件夹并将result.txt复制到其他路径并通过mv命令重命名。但只有结果一个子目录中的 .txt 文件,每个都被复制而不是全部。
我尝试了以下命令:
cp $folder/$subfolder/resu*txt ../tsv/$newfolder/
(我之前分配了变量)
mv ../tsv/$newfolder/resu*txt ../tsv/$newfolder/results$tts.txt
(我将 $tts 定义为文件夹中的子文件夹数)
这仅从每个父文件夹的第一个子文件夹中复制了 result.txt。
【问题讨论】:
-
batch-file与Windows相关,请调整标签!也许您的意思是spring-batch 或bash,甚至batch-processing?
-
实际上是批处理。我会纠正的。谢谢。
标签: shell unix scripting file-handling