服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - linux tr 文件转换的例子

linux tr 文件转换的例子

2019-12-10 15:53Linux教程网 Linux

linux中的tr命令,可用于文件名大小写转换,只转换文件名。扩展名转换同理。其它条件同理

加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

延伸 · 阅读

精彩推荐