有没有比这样做更好的选择:
echo "{\"error\": \"Must be executed using the user account 'admin'.\"}" >&2;
在 bash 脚本中?
你可以试试这里的文件:
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