mattnさんの以下ツイートが流れてきてめちゃ便利じゃんと感動したのでメモ
今日の bash tips: 変数の文字列を先頭大文字にしたり全て大文字/小文字にしたりするのに sed は使わない。
— mattn (@mattn_jp) 2020年11月18日
$ os=linux; echo ${os^}
Linux
$ os=linux; echo ${os^^}
LINUX
$ os=LinuX; echo ${os,}
linuX
$ os=LinuX; echo ${os,,}
linux
$ os=LiNuX; echo ${os~~}
lInUx
これも足しておこう。
— mattn (@mattn_jp) 2020年11月18日
$ os=Linux; echo ${os//inu/umi}
Lumix
まとめ
最初の文字だけ大文字にする
$ os=linux; echo ${os^} Linux
全部大文字にする
$ os=linux; echo ${os^^} LINUX
最初の文字だけ小文字にする
$ os=LinuX; echo ${os,} linuX
最初と最後の文字だけ小文字にする
$ os=LinuX; echo ${os,,} linux
大文字小文字を入れ替える
$ os=LiNuX; echo ${os~~} lInUx
指定文字置換
$ os=Linux; echo ${os//inu/umi} Lumix
おわりに
これらの記法はbash v4以降で使えるものなので、MacとかのBashだと動きません\(^o^)/
Bash Tipsすきだわ〜\(^o^)/