我目前正在通过 Ubuntu 16 中的终端学习 Unix bash。我正在编写一个简单的脚本,所以我可以练习为 Unix 编写代码。下面是代码示例:

report_uptime(){
cat << _EOF_
    <H2>System Uptime</H2>
    <PRE>$(uptime)</PRE>
    _EOF_
return
}

这段代码不起作用,原因是因为在 cat 之后我应该使用 <<- 而不是 << 。有时 << 工作。那么我什么时候应该使用 << ,什么时候应该使用 <<-

这有效:
report_uptime(){
cat <<- _EOF_
    <H2>System Uptime</H2>
    <PRE>$(uptime)</PRE>
    _EOF_
return
}

最佳答案

这本身不是 cat 语法;它是您的 shell 支持的重定向运算符之一:

https://www.gnu.org/software/bash/manual/bashref.html#Here-Documents

关于bash - Bash 中 heredoc 的输入语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38043344/

10-09 08:31