大小写字母转换的shell脚本代码
程序员文章站
2023-01-08 19:59:22
以下脚本,可以进行目录或文件大小写字母转换,代码如下: 复制代码 代码如下: #!/bin/sh #edit by www.jb51.net # [:upper:] [ a...
以下脚本,可以进行目录或文件大小写字母转换,代码如下:
#!/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 ,转换后其内容全部变为大写,如下图:
下一篇: Bash的For循环(根据每次递增的数)