bash中有没有将字符串转换为小写字符串的方法?
例如,如果我有:
a="Hi all"
我想将其转换为:
"hi all"
bash中有没有将字符串转换为小写字符串的方法?
例如,如果我有:
a="Hi all"
我想将其转换为:
"hi all"
当前回答
对于Bash 3.2.+| Mac:
read -p 'What is your email? ' email
email=$(echo $email | tr '[:upper:]' '[:lower:]')
email="$email"
echo $email
其他回答
使用此命令执行同样的操作,它会将大写字符串转换为小写:
sed 's/[A-Z]/[a-z]/g' <filename>
tr:
a="$(tr [A-Z] [a-z] <<< "$a")"
AWK:
{ print tolower($0) }
sed:
y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
在zsh中:
echo $a:u
我爱你!
echo "Hi All" | tr "[:upper:]" "[:lower:]"
在bash 4中,可以使用类型集
例子:
A="HELLO WORLD"
typeset -l A=$A