Bashシェルでこれを行うことができる場合:
$ STRING="A String"
$ echo ${STRING^^}
A STRING
コマンドラインパラメータを大文字に変更するには?
私は試した:
GUARD=${1^^}
この生産ラインは誤った交換この行にエラーがあります。
ベストアンサー1
このテストスクリプトから始めましょう。
$ cat script.sh
GUARD=${1^^}
echo $GUARD
これは働きます:
$ bash script.sh abc
ABC
これはうまくいきません:
$ sh script.sh abc
script.sh: 1: script.sh: Bad substitution
これは、私のシステムでは、ほとんどのDebianのようなシステムと同様に、デフォルトのシェルは次のようになるから/bin/sh
です。いいえ吹く。 Bash機能を取得するには、bashを明示的に呼び出す必要があります。
Debianシリーズシステムのデフォルトシェルは、機能ではdash
なく速度のために選択されました。サポートされていません^^
。何をサポートしているのかを知るには、次を読んでくださいman dash
。