我尝试将小写字符串转换为大写字母,并使用以下代码将其分配给变量
该脚本以.tn扩展名编写
set y a12
y_up=$( tr '[A-Z]' '[a-z]' <<< $y)
echo $y
echo $y_up
但我收到了错误
invalid command name "A-Z"
while executing
"A-Z"
invoked from within
"y_up=$( tr '[A-Z]' '[a-z]' <<< $y) "
我该怎么转换呢?
答案 0 :(得分:4)
在Works下面,试试这个。
bash-3.2$echo lower to upper | tr '[:lower:]' '[:upper:]'
LOWER TO UPPER
# To Save in the variable use below
var=$(echo lower to upper | tr '[:lower:]' '[:upper:]')
答案 1 :(得分:1)
这应该有效:
$ y="Foo Bar Baz"
$ y_up=$(tr '[A-Z]' '[a-z]' <<< $y)
$ echo $y_up
foo bar baz
答案 2 :(得分:0)
BASH 4+版本具有将字符串转换为大写的本地方式:
upperStr="${str^^}"
答案 3 :(得分:0)
如@anubhava所述,如果有人希望使用本机方式将字符串转换为小写
$ str="BASH"
$ echo ${str,,}
bash