ホーム >

シェルスクリプトTips

標準入力から文字を入力する

read -e -p "Prompt> " value
value=${value:-DEFAULT_VALUE}
echo $value

文字列の大文字を小文字に変換する

trコマンドを使用する場合

value=`echo $value | tr [A-Z] [a-z]`

awkコマンドを使用する場合

value=`echo $value | awk '{print tolower($0)}'`

Bash4.0系の場合

value=${value,,}

sudoの実行結果をリダイレクトするとpermission deniedが出る問題への対処方法

sudoで実行した結果をリダイレクトしても、書き込み先のディレクトリに書き込み権限がないと、permission deniedでエラーになってしまう。 この問題は、sudoでteeコマンドを実行することで回避できる。

ヒアドキュメント利用時に変数展開を抑制する

ヒアドキュメントの終了文字(EOF, EOMなど)をシングルクォートで囲むと、ヒアドキュメント内での変数展開やコマンドの実行が抑制される