Shell 三个反引号的 STDIN 重定向
Shell STDIN redirection of three backticks
动机
我有一个 Markdown 反引号代码块,我想将它插入到列表项中。为了好玩,我尝试将 awk 与 STDIN 重定向一起使用。我运行陷入以下问题。
问题
我改编自Tutorials Point的示例来计算 Markdown 代码块的行数。
$ wc -l << EOF
```
codeblock
```
EOF
- 预期输出:
3
实际输出:
zsh: command not found: codeblock
1
如何让 shell 解析 STDIN 中的奇数个反引号?
感谢阅读。
反引号用于 command substitution, and command substitutions are expanded in here documents。您应该引用 EOF
-这将禁用所有扩展-,或者转义那些反引号。
$ wc -l << 'EOF'
```
codeblock
```
EOF
3
$
$ wc -l << EOF
\`\`\`
codeblock
\`\`\`
EOF
3
动机
我有一个 Markdown 反引号代码块,我想将它插入到列表项中。为了好玩,我尝试将 awk 与 STDIN 重定向一起使用。我运行陷入以下问题。
问题
我改编自Tutorials Point的示例来计算 Markdown 代码块的行数。
$ wc -l << EOF
```
codeblock
```
EOF
- 预期输出:
3
实际输出:
zsh: command not found: codeblock 1
如何让 shell 解析 STDIN 中的奇数个反引号?
感谢阅读。
反引号用于 command substitution, and command substitutions are expanded in here documents。您应该引用 EOF
-这将禁用所有扩展-,或者转义那些反引号。
$ wc -l << 'EOF'
```
codeblock
```
EOF
3
$
$ wc -l << EOF
\`\`\`
codeblock
\`\`\`
EOF
3