如果我有一组扩展名为.htm的文件,如何将它们全部重命名为.html?
mv *.htm *.html
不起作用。
或者,您可以使用纯bash ...(除了mv,就是..)
for file in *.htm; do mv "$file" "${file%.htm}.html"; done
并避免使用讨厌的基本名称。;)
Bash具有广泛的变量扩展选项集。此处使用的一个'%'从变量的值中删除最小的匹配后缀。该模式是全局模式,因此${file%.*}
也可以使用。'%%'运算符删除了最大的匹配后缀,并且在上面的示例中可以互换,因为该模式是固定的,${file%%.*}.html
但是会将abhtm转换为a.html。
有关更多巧妙的技巧,请参见bash联机帮助页的变量替换部分。直接在bash中可以做很多事情。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句