系統管理
1748158 會員
3887 線上
108758 解決方案
發表新文章

有沒有 shell 函數可以轉換大小寫?

 
watermelonyu
教授

有沒有 shell 函數可以轉換大小寫?

是否可以把 $1 的值都轉成大寫
3則回覆 3
watermelonyu
教授

有沒有 shell 函數可以轉換大小寫?

我不是很清楚你的主要需求是什麼, 不過你可以試試看 tr 指令有沒有符合你的需求



#man tr



看到 -s option 的部份, 再討論看看可不可行
watermelonyu
教授

有沒有 shell 函數可以轉換大小寫?

root@SD /tmp> ./test.sh putty

PUTTY



root@SD /tmp> cat test.sh

#!/usr/bin/ksh



echo $1|tr 'a-z' 'A-Z'



watermelonyu
教授

有沒有 shell 函數可以轉換大小寫?

可使用 AWK 的 toupper() and tolower()

awk '{print toupper("abcd")}'; ----> ABCD

awk '{print tolower("AbCD")}'; ----> abcd



若是整個檔案 /tmp/file.txt

file.txt ---> abcdefg

hijklmn



awk '{print toupper($0)}' /tmp/file.txt

ABCDEFG

HIJKLMN