需求:将数据库中的所有表名转换成大写
方法一:typeset
for i in `mysql -uusername -p'password' -h 192.168.0.145 test -e "show tables" | sed '1d'` ;do typeset -u i && echo $i ;done
命令实例:
test="dafoJg"
typeset -u test
echo $test
问题:
使用typeset命令第一次转换的时候,还是原字符串
方法二:tr
###推荐用 tr 替换的方法
##upper表示大写,lower表示小写
for i in `mysql -uusername -p'password' -h 192.168.0.145 test -e "show tables" | sed '1d'` ;do echo "$i" | tr "[:lower:]" "[:upper:]" ;done
或者
for i in `mysql -uusername -p'password' -h 192.168.0.145 test -e "show tables" | sed '1d'` ;do echo "$i" | tr [a-z] [A-Z] ;done
命令实例:
echo "AedBcC" | tr "[:lower:]" "[:upper:]" 或者 echo "AedBcC" | tr [a-z] [A-Z] #小写转换成大写
echo "AABBCC" | tr "[:upper:]" "[:lower:]" 或者 echo "AABBCC" | tr [A-Z] [a-z] #大写转换成小写