我有一组文件,所有文件nnn.MP4.mov
我怎样才能重命名它们以便它只是nnn.mov
?
答案 0 :(得分:84)
首先,使用以下内容进行干运行(实际上不会重命名任何文件):
for file in *.mov
do
echo mv "$file" "${file/MP4./}"
done
如果一切正常,请从第三行删除echo
以实际重命名文件。
答案 1 :(得分:35)
我刚刚成功使用了Automator(我第一次打扰),而且效果非常好。我将自动化保存为服务。制作易于重复使用的东西花了大约10秒钟:
现在,您可以右键单击Finder中的任何选项,转到“服务”菜单并选择“替换文本”,填写您希望文本更改或替换的方式 - 然后单击“继续”以应用已配置的更改。
答案 2 :(得分:11)
for n in *.MP4.mov
do
mv $n $(echo $n | sed -e 's/.MP4//')
done
这甚至可以在没有参数替换的真正旧shell上运行,至少对我的眼睛来说有点可读性。
答案 3 :(得分:10)
测试打印操作:
for file in *.MP4.mov; do j=`echo $file | cut -d . -f 1`;j=$j".mov";echo mv \"$file\" \"$j\"; done
使其有效:
for file in *.MP4.mov; do j=`echo $file | cut -d . -f 1`;j=$j".mov";mv "$file" "$j"; done
答案 4 :(得分:5)
在mac OSX上,您可以通过Homebrew安装rename
命令:brew install rename
然后,您可以在命令行上使用该文件夹中的find / replace重命名:
rename 's/\.MP4\././' *
您还可以使用man rename
查看更多选项。
答案 5 :(得分:1)
for i in `ls *png`;do echo mv $i "${i%%.*}"@xx."${i##*.}";done
答案 6 :(得分:1)
vimv可让您使用Vim的文本编辑功能重命名多个文件。
输入vimv会打开一个Vim窗口,其中列出了所有文件,您可以进行模式匹配,视觉选择等来编辑名称。退出Vim后,文件将被重命名。
[免责声明:我是该工具的作者]
答案 7 :(得分:1)
OS X有一个Rename Files…
上下文菜单项,当您在Finder中选择两个或多个文件时会调用该菜单项。提供与上面的Automator应答相同的功能。虽然Automator为您提供了进一步的工具,如果您愿意。
(我知道OP要求终端,但其他33人喜欢Automator响应)
答案 8 :(得分:0)
ls -1 *.MP4.mov | while read f; do mv -i "$f" "$(basename \"$f\" .MP4.mov)"; done
编辑:完全重写。
答案 9 :(得分:0)
for i in *;
do j=`echo $i | cut -d . -f 1`;
j=$j".mov";
mv $i $j;
done
这将在第一个点之前剪切所有内容并附加.mov
但如果某些文件是例如hi.2.mov和hi.1.mov将被覆盖,所以请小心使用^^