gpt4 book ai didi

linux - rsync - 复制同名文件

转载 作者:太空宇宙 更新时间:2023-11-04 03:51:02 34 4
gpt4 key购买 nike

我有一些同名的不同文件,我想将它们全部复制到具有平面结构的目标(没有目录,只有文件),是否有任何方法可以将一些文本附加到其中一个文件名上,以便两个文件都可以复制。

需要使用 rsync,因为我需要从副本中排除一些文件。

例如: dir1/file1.txt dir1/dir2/file1.txt两者都被复制,并且在目的地中有: 文件1.txt file1.txt.txt

最佳答案

通常,当我想做一些复杂的名称修改时,我只需编写文件列表(使用 find dir1 >listfiles )并使用文本编辑器修复它。

例如,s/^.*\/([^\/]+)$/cp \0 destination/\1/转换一个文件,例如

dir1/file1.txt
dir1/dir2/file1.txt

像这样的脚本:

cp dir1/file1.txt destination/file1.txt
cp dir1/dir2/file1.txt destination/file1.txt

那么你可以做类似 cut -f 3 <listfiles | sort | uniq -d 的事情查找具有相同目标文件名的文件。然后返回编辑器并修复这些行。

几分钟后,您将获得完全符合您想要的副本的完整脚本,不会出现任何意外,因为您可以看到每个命令并针对每种情况应用最佳修复。

关于linux - rsync - 复制同名文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26369006/

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