我是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/