Есть ли лучшая альтернатива, чем делать:JSON закодировать в Баш
echo "{\"error\": \"Must be executed using the user account 'admin'.\"}" >&2;
в Баш сценариев?
Есть ли лучшая альтернатива, чем делать:JSON закодировать в Баш
echo "{\"error\": \"Must be executed using the user account 'admin'.\"}" >&2;
в Баш сценариев?
Вы можете попробовать здесь документ:
cat <<EOT
{"error": "Must be executed using the user account 'admin'."}
EOT
Это работает, если у вас нет ни одной строки, содержащей только EOT
сам по себе в тексте, который вы хотите cat
. Если это проблема, вы можете выбрать альтернативный токен, например.
cat <<FOO
EOT
FOO
Кроме того, если вы обнаружите, что даже основные здесь документы приводят к нежелательному расширению, например.
cat <<EOT
foo$a
EOT
будет пытаться расширить $a
, вы можете процитировать здесь документ маркер, чтобы остановить это расширение:
cat <<'EOT'
foo$a
EOT