大小写字母转换的shell脚本代码
时间:2021-07-23 07:38:03|栏目:Shell|点击: 次
以下脚本,可以进行目录或文件大小写字母转换,代码如下:
#!/bin/sh
#edit by www.jb51.net
# [:upper:] [ A - Z ]
# [:lower:] [ a - z ]
# [:digit:] [ 0 - 9 ]
# [:alnum:] [ 0 - 9 a - z A-Z]
# [:space:] 空格或t a b键
# [:alpha:] [ a - z A - Z ]
# tr
for f in *
do
echo $f | tr "[:upper:]" "[:lower:]"
done
#awk
#把当前目录下的所有小写文件名都改为大写文件名。
ls | awk '{printf("mv %s %s\n", $0, toupper($0))|"sh"}'
#把当前目录下的所有大写文件名都改为小写文件名。
ls | awk '{printf("mv %s %s\n", $0, tolower($0))|"sh"}'
#sed
file="test.txt"
cat $file | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'
代码说明:
方法1,使用tr命令。
方法2,方法3,使用aw命令。
方法4,使用cat sed命令。
对于测试文件test.txt,其原始内容,如下图:
经方法4 ,转换后其内容全部变为大写,如下图:
复制代码 代码如下:
#!/bin/sh
#edit by www.jb51.net
# [:upper:] [ A - Z ]
# [:lower:] [ a - z ]
# [:digit:] [ 0 - 9 ]
# [:alnum:] [ 0 - 9 a - z A-Z]
# [:space:] 空格或t a b键
# [:alpha:] [ a - z A - Z ]
# tr
for f in *
do
echo $f | tr "[:upper:]" "[:lower:]"
done
#awk
#把当前目录下的所有小写文件名都改为大写文件名。
ls | awk '{printf("mv %s %s\n", $0, toupper($0))|"sh"}'
#把当前目录下的所有大写文件名都改为小写文件名。
ls | awk '{printf("mv %s %s\n", $0, tolower($0))|"sh"}'
#sed
file="test.txt"
cat $file | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'
代码说明:
方法1,使用tr命令。
方法2,方法3,使用aw命令。
方法4,使用cat sed命令。
对于测试文件test.txt,其原始内容,如下图:
经方法4 ,转换后其内容全部变为大写,如下图:
上一篇:shell脚本实现mysql定时备份、删除、恢复功能
栏 目:Shell
本文标题:大小写字母转换的shell脚本代码
本文地址:http://www.codeinn.net/misctech/160529.html