我是Bash脚本的新手,这让我感到困惑。我正在将ASCII艺术添加到项目中,并且似乎无法弄清楚如何转义某些字符。有人可以帮我下面的代码工作吗?

每当我尝试添加斜杠作为转义字符以修复错误时,这些斜杠还会使打印在执行时集中到控制台。这会破坏图像。我不明白自己在做什么错,所以我在下面发布了代码,希望有人花点时间向我展示正确的方法。请?
我删除了引号,以防止困惑。

echo -en "\E[31m"
echo
echo       _,.
echo     ,` -.)
echo    '( _/'-\\-.
echo   /,|`--._,-^|          ,
echo   \_| |`-._/||          ,'|
echo     |  `-, / |         /  /
echo     |     || |        /  /
echo      `r-._||/   __   /  /
echo  __,-<_     )`-/  `./  /
echo '  \   `---'   \   /  /
echo     |           |./  /
echo     /           //  /
echo \_/' \         |/  /
echo  |    |   _,^-'/  /
echo  |    , ``  (\/  /_
echo   \,.->._    \X-=/^
echo   (  /   `-._//^`
echo    `Y-.____(__}
echo     |     {__)
echo           ()`

最佳答案

bash中的引号是重要的语法元素,而不是困惑。但是,要打印ASCII艺术作品,请避免使用正确的引号和转义符,而只需使用here document即可:

cat << "EOF"
       _,.
     ,` -.)
    '( _/'-\\-.
   /,|`--._,-^|            ,
   \_| |`-._/||          ,'|
     |  `-, / |         /  /
     |     || |        /  /
      `r-._||/   __   /  /
  __,-<_     )`-/  `./  /
 '  \   `---'   \   /  /
     |           |./  /
     /           //  /
 \_/' \         |/  /
  |    |   _,^-'/  /
  |    , ``  (\/  /_
   \,.->._    \X-=/^
   (  /   `-._//^`
    `Y-.____(__}
     |     {__)
           ()`
EOF

确保不要在此处删除引号。它们不是可选的。

关于bash - 无法使ASCII艺术作品回显到控制台,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25214084/

10-12 20:57