Linux (Shell Script) CSH

Думаю, я разобрался с этим. Все еще интересно, как другие решают эту проблему:

cat > script.sh <<'EOF'
#!/bin/bash -ex
hi='hello world!'
echo $hi
EOF

В качестве примечания, похоже, что freebsd требует:

cat > script.sh <<'EOF'
#!/bin/bash -ex
hi='hello world!'
echo $hi
'EOF'
-2
03.12.2018, 17:31
1 ответ

Эта строка взята из сценария оболочки csh. Он устанавливает переменную fileв пустую строку. #emptyв конце строки — это комментарий. Однако оболочка cshне любит комментарии в этом контексте и будет жаловаться на

set: Variable name must begin with a letter.

Чтобы исправить это, переместите комментарий на строку перед назначением:

# set 'file' to an empty string
set file=""
3
28.01.2020, 05:15

Теги

Похожие вопросы