bashのヒアドキュメントでコマンドを実行する

bashのヒアドキュメントでコマンドを実行させるのに手間取ったのでメモ

‘EOT’のようにシングルクオート(やダブルクオート)をつけると変数が展開されません

/home/user/shell
で実行しました

こう書けばできました

#!/bin/bash

x=`pwd`

cat <<EOT
${x}
$(dirname $x)
EOT
# /home/user/shell
# /home/user/

cat <<'EOT'
${x}
$(dirname $x)
EOT
# ${x}
# $(dirname $x)

cat <<"EOT"
${x}
$(dirname $x)
EOT
# ${x}
# $(dirname $x)

コマンドの下にコメントアウトで結果を表示してます

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください