欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

linux tr 文件转换的例子

程序员文章站 2022-06-13 13:13:29
linux中的tr命令,可用于文件名大小写转换,只转换文件名。扩展名转换同理。其它条件同理... 13-02-04...
加if判断这样 不满足条件的就不会去处理。或者处理过的就不会再处理。
${i%%.*}  取文件名
${i#*.}   取扩展名
 
纯小写字母的转大写:

复制代码
代码如下:

for i in * ; do exp=${i#*.};o=${i%%.*}; if [[ $o =~ ^[a-z]+$ ]];then mv $i $(echo $o|tr [a-z] [a-z]).$exp; fi; done

连同扩展名:

复制代码
代码如下:

for i in * ; do exp=${i#*.};o=${i%%.*}; if [[ $o =~ ^[a-z]+$ ]];then mv $i $(echo $o|tr [a-z] [a-z]).$(echo $exp|tr [a-z] [a-z]); fi; done

小写字母开头

复制代码
代码如下:

for i in * ; do exp=${i#*.};o=${i%%.*}; if [[ $o =~ ^[a-z] ]];then mv $i $(echo $o|tr [a-z] [a-z]).$exp; fi; done

连同扩展名:

复制代码
代码如下:

for i in * ; do exp=${i#*.};o=${i%%.*}; if [[ $o =~ ^[a-z] ]];then mv $i $(echo $o|tr [a-z] [a-z]).$(echo $exp|tr [a-z] [a-z]); fi; done