Як відлунювати змінні за допомогою cat у файл?


9

У мене такий простий сценарій:

#!/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використовувати мої значення змінних, а не імена всередині цього рядка?

Відповіді:


15

Опустіть одинарні лапки навколо обмежувального рядка тут, EOFщоб уникнути придушення заміни параметрів. Детальніше тут .

Особливо візьміть до уваги " Приклад 19-7. Заміна параметрів вимкнена " та " Приклад 19-8. Сценарій, що генерує інший сценарій " .


1
@sukminder, дякую Продовжуйте це мати на увазі
ірувар
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.