我有一个cron,它将.txt
附加到目录中的每个文件。
find /path/to/directory -type f -exec mv '{}' '{}'.txt \;
不幸的是,保持附加.txt
,即使它已经拥有它!
我的目录现在看起来像这样......
file1.txt.txt.txt.txt.txt.txt.txt.txt.txt
file2.txt.txt.txt.txt.txt.txt.txt.txt.txt
你推荐什么?
答案 0 :(得分:4)
您必须修改find
命令才能排除带扩展名的文件。
find /path/to/files ! -name "*.*" -type f -exec mv '{}' '{}'.txt \;
然而,这也意味着它会忽略如下文件:
i.am.a.file.with.no.extension
因此,如果您有上述文件,那么最好使用regex
选项为.
处的$
编制索引。