以轉換成大寫為例子:我都是使用的的測試的例子,如果是生産代碼的話,請自行修改。
第一種方法:tr指令
tr -- translate or delete characters
轉換成小寫的時候就是tr A-Z a-z
# cat |tr a-z A-Z
第二種方法:sed指令
# cat |sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'
好ugly的方法,有點辱沒Linux了。
第三種方法:awk語言
# cat |awk '{print toupper($0)}'
對應的轉換成小寫的做法是把toupper函數替換成tolower函數。
第四種方法:Perl語言
# perl -e '$_=<STDIN>;chomp;s/(.*)/\U$1/;print $_;'
對應的轉換成小寫的做法是替換s/(.*)/\U$1/為s/(.*)/\L$1'再運作。
其實這幾種方法最最專業要數Perl了,因為它的文字處理功能可以說是最最強大了。有興趣的話可以分别測試下:
s/(.*)/\U$1/g
s/(.*)/\L$1/g
s/(.*)/\u$1/g
s/(.*)/\l$1/g
s/(.*)/\uL$1/g
s/(.*)/\l\U$1/g
上面的幾個比對的意義是差别也不小!
本文轉自xiaoyuwang 51CTO部落格,原文連結:http://blog.51cto.com/wangxiaoyu/197623,如需轉載請自行聯系原作者