我有两个连续内容的目录(即内容的文件名为001.jpg,002.jpg,003.jpg等等,最多可达1000个文件) 。我想将它们合并到一个新的目录中交替顺序如下所示:将两个目录的内容交织到一个新目录
Dir1
├── 001.jpg
├── 002.jpg
├── 003.jpg
└── 004.jpg
Dir2
├── 002.jpg
├── 003.jpg
├── 004.jpg
└── 005.jpg
OutputDir
├── 001.jpg (001.jpg from Dir1)
├── 002.jpg (002.jpg from Dir2)
├── 003.jpg (002.jpg from Dir1)
├── 004.jpg (003.jpg from Dir2)
├── 005.jpg (003.jpg from Dir1)
├── 006.jpg (004.jpg from Dir2)
├── 007.jpg (004.jpg from Dir1)
└── 008.jpg (005.jpg from Dir2)
这是我有,但它依赖于两个迪尔斯具有相同名称:
cp Dir1/* OutputDir/
cp --backup=existing --suffix=.2 Dir2/* OutputDir/
cd OutputDir
# next line from here: https://stackoverflow.com/questions/3211595/renaming-files-in-a-folder-to-sequential-numbers
ls | cat -n | while read n f; do mv "$f" "$n.jpg"; done
我希望的一个不依赖于两个目录的文件名相同的解决方案。
您可能希望完全删除*命令替换*和'ls',只允许* globbing *来填充数组。但是,你和ghoti都会得到几乎同时答案的投票':)'我仍然困惑于哪个文件获得下一个序号逻辑(或缺少逻辑)的逻辑。 –
非常感谢。完成。 – Gene
我忘了说明,但是两个目录都有相同数量的文件。 –