我一直在寻找一种方法来将字符串值从大写转换为小写。所有搜索结果显示使用tr命令的方法。
tr命令的问题是,我能够获得结果,只有当我使用命令与echo语句。例如:
y="HELLO" echo $y| tr '[:upper:]' '[:lower:]'
上面的工作和结果在’hello’,但我需要分配结果到一个变量如下:
y="HELLO" val=$y| tr '[:upper:]' '[:lower:]' string=$val world
当像上面这样赋值时,它给我一个空结果。
PS:我有的Bash版本是3.1.17
如果您使用bash 4,您可以使用以下方法:
x="HELLO" echo $x # HELLO y=${x,} echo $y # hello z=${y^^} echo $z # HELLO
只使用一个,或^使第一个字母小写或大写。