我正在尝试查看是否可以使用正则表达式来重命名目录中的一长串文件。
即当前文件名的格式如下:
filename_[2013_05_30].mp4
我想将其重命名为以下格式:
[2013_05_30]_filename.mp4
我正在使用 Linux (Ubuntu),可以使用 shell 脚本或 php。
谢谢!
之前备份你的文件。
用这条线测试:
ls *].mp4 | sed 's/^\(.*\)_\(\[[0-9_]*]\)\.mp4$/mv & \2_\1.mp4/'
当你确定时,添加| sh
:
ls *].mp4 | sed 's/^\(.*\)_\(\[[0-9_]*]\)\.mp4$/mv & \2_\1.mp4/' | sh
这里有几种不同的方法可以在 linux shell 脚本(包括正则表达式)中完成从 unix stackexchange 重命名文件: https ://unix.stackexchange.com/questions/7161/copy-rename-multiple-files-using-regular -表达式外壳脚本
我希望这有帮助!