我正在尝试同步 2 个包含多种类型音频文件(WMA、MP3、M4V...)的文件夹。
我想同步这些文件夹,但同步过程应该只考虑文件名,而不考虑扩展名。因此,如果文件夹 A 包含“the suburbs.mp3”并且文件夹 B 包含“the suburbs.m4v”,则同步程序应将这两个文件视为相同(而不同步它们)。
我正在研究 rsync 的文档,但似乎找不到方法来做到这一点。
有没有人有建议,或者对可以做到这一点的其他软件有建议?
答案1
您可以创建具有所有可能扩展名的空文件,并使用--ignore-existing
.
find A -type f \( -name '*.flac' -o -name '*.m4v' -o -name '*.mp3' -o '*.ogg' -o '*.wma' \) \
-exec sh -c '
for base; do
base=${base%.*};
for ext in flac m4v mp3 ogg wma; do : >>"$base.$ext"; done;
done' _ {} +
# Do the same on B …
rsync -a --ignore-existing A B
您可能感兴趣mp3fs, AFUSE 可堆叠文件系统它提供了目录树视图,其中所有音频文件均显示为 MP3。我认为这对解决您的问题不会特别有帮助,但它可能是解决您的问题或以其他方式证明有用的替代方法。