2012年3月20日火曜日

[Shell 基础] 大小写转换

[:upper:] [ A - Z ]
[:lower:] [ a - z ]
[:digit:] [ 0 - 9 ]
[:alnum:] [ 0 - 9 a - z A-Z]
[:space:] 空格或tab键
[:alpha:] [ a - z A - Z ]

1. tr 命令
1-1. 变换文件名
for f in $*
do
  mv $f `echo $f | tr "[:upper:]" "[:lower:]"`
done

2. awk 命令
2-1. 变换文件名
ls | awk '{printf("mv %s %s\n", $0, toupper($0))|"sh"}'
ls | awk '{printf("mv %s %s\n", $0, tolower($0))|"sh"}'

3. sed 命令
3-1. 变换文件内容
cat filename | sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'

3-2.
$ cat filename | tr "[:lower:]" "[:upper:]"

0 件のコメント:

コメントを投稿