一个班轮到大写的第一个字母?

时间:2014-10-12 16:51:57

标签: bash case-sensitive

我很好奇是否有更容易,更短的方法来做到这一点?

foo="FOO"
foo="${foo,,}"
echo "${foo^}" //Foo

bar="bar"
bar="${bar,,}"
echo "${bar^}" //Bar

第一部分很重要,因为我可以使用克拉来大写第一个字母,但如果这个单词都是全部大写字母,那么这不会小写剩余部分。感谢

1 个答案:

答案 0 :(得分:2)

你可以通过sed,

来做到这一点
foo="FOO";sed 's/.*/\L&/;s/^./\U&/' <<< "$foo"