Linux 批量重命名带空格的文件
专家请忽略本文。Linux/Unix的文件是不该用特殊字符命名的,因为处理比较困难。博主现在遇到了问题,文件夹内有几百个文件名带空格的文件,想要重命名,按照以往的批处理方式不成功,因为空格前后被当成了独立的字符串。怎么处理呢?1
for f in *\ *; do mv "$f" "${f/%.lrc/ - .lrc}"; done
这个命令会把所有名为*.lrc
的文件命名为* - .lrc
文件。
如果想将所有空格换成_
则是1
for f in *\ *; do mv "$f" "${f// /_}"; done
其实linux有另外一个很强大的rename
命令,批量命名文件非常好,支持正则匹配,不过博主目前多正则表达式还一窍不通,不能给出什么例子。但是rename
自有处理文件名带特殊字符的方法。比如1
rename --nows *
会将当前目录所有文件名中的空格替换成_
。以后等博主研究清楚再更新吧。
- 本文链接:http://shengdie.github.io/2016/11/02/linux-rename/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!
分享