catを使って変数をファイルにエコーする方法は?

catを使って変数をファイルにエコーする方法は?

次の簡単なスクリプトがあります。

#!/bin/bash

BOO=bla-bla-bla

cat > ./Makefile <<'EOF'
        Hello
        INCLUDES := -I/data/opt/include/ -Ideps/ -I$BOO/include
EOF

ただし、ファイルとして出力されます。

 Hello
 INCLUDES := -I/data/opt/include/ -Ideps/ -I$BOO/include

catその文字列の名前の代わりに変数値をどのように使用できますか?

答え1

EOFパラメータ置換を抑制したくない場合は、ここから文書制限文字列の周囲の一重引用符を削除してください。詳しくはここ

特別な注意を払わなければならない例19-7.パラメータ置換がオフになっています。そして例19-8.あるスクリプトが別のスクリプトを生成します。

関連情報