tr命令在bash脚本中失败

时间:2019-04-09 14:38:54

标签: bash sh

我写了一个我经常使用的bash脚本。突然下一个命令失败,并显示错误`[:lower:]:命令未找到。我用了很长时间的脚本,所以该命令以前就起作用了。

PROJECTTITLE="$(tr '[:lower:]' '[:upper:]' <<< ${PROJECTNAME:0:1})${PROJECTNAME:1}"

该命令将字符串变量转换为Title大小写并将其保存在另一个变量中。

在控制台中执行相同的代码时,它可以正常工作。

我使用的是macOS Mojace 1.14.2,bash版本3.2.57(1)-发行版。

1 个答案:

答案 0 :(得分:0)

不需要涉及外部命令和子外壳程序; Bash内置了大小写修改功能! edit:从4.0版开始

PROJECTNAME=${PROJECTNAME,,} # convert all characters to lowercase
PROJECTTITLE=${PROJECTNAME^} # convert first character to uppercase