0

我一直在使用这篇文章作为参考(递归地为所有文件添加文件扩展名),它让我达到了 90% 的目标,但我不知道如何完成我需要的 shell 脚本。

这是我到目前为止制作的脚本:

find /Users/Floyd/Desktop/test -type f -not -name "*.*" -not -ipath "*zworkfolder*" -exec mv '{}' '{}'.mov \;

我想在“test”文件夹中找到所有没有 .mov 扩展名的文件,并将扩展名添加到文件名的末尾。在大多数情况下它可以工作,但是当我遇到带有“。”的文件名时遇到了问题。在文件名中。
前任。“A020_C020_0321R7_001_A020_C020_0321R7_001.new.02”。

我该怎么做才能使其为这些文件名添加 .mov 扩展名?

谢谢你。

弗洛伊德。

4

1 回答 1

0

如果您不希望文件匹配*.mov,则应按此过滤,而不是更通用的*.*.. 因此以下内容应该可以解决问题:

  find /Users/Floyd/Desktop/test \
       -type f -not -name "*.mov" -not -ipath "*zworkfolder*" \
       -exec mv \{\} \{\}.mov \;
于 2013-06-25T07:28:19.610 回答