![脚本编写:如何使用自动重命名和维护 .ext 来 cp(或 rsync)相同的文件(和文件名)](https://linux22.com/image/170297/%E8%84%9A%E6%9C%AC%E7%BC%96%E5%86%99%EF%BC%9A%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E8%87%AA%E5%8A%A8%E9%87%8D%E5%91%BD%E5%90%8D%E5%92%8C%E7%BB%B4%E6%8A%A4%20.ext%20%E6%9D%A5%20cp%EF%BC%88%E6%88%96%20rsync%EF%BC%89%E7%9B%B8%E5%90%8C%E7%9A%84%E6%96%87%E4%BB%B6%EF%BC%88%E5%92%8C%E6%96%87%E4%BB%B6%E5%90%8D%EF%BC%89.png)
我想写一个简单的 bash 脚本(for 循环)。
获得所需文件列表后,例如:find /start/* -iname "*.txt" > txt.list
我想复制它们都位于一个独特的目的地中,具有自动重命名和维护其扩展的功能。
因此,如果来源是:
/start/sourceA/: name1.txt, name2.txt, name3.mov, ..., namen.txt, ecc...
/start/sourceB/: name1.txt, name2.txt, name4.ods, ..., namen.txt, ecc...
/start/sourceC/: name1.txt, name2.txt, name7.jpg, ..., namen.txt, ecc...
我想要一个包含所有 txt 文件的目标:
/end/destination: name1.txt, name1_01.txt, name2.txt, name2_01.txt, ..., namen.txt, ecc...
您能帮我解释一下该怎么做吗?cp
或者rysnc
? <--- 哪一个最适合?