我正在markdown
编写一些文档,我想记录如何使用bash HEREDOC创建文本文件。这是我要记录的命令:
# cat > /tmp/answers.txt <<EOT
> value1=blah
> value2=something else
> value3=`hostname`
> value4=onetwothree
EOT
在markdown中,使用`将文本呈现为&#34;代码&#34;我试过这样做......
`# cat > /tmp/answers.txt <<EOT`
`> value1=blah`
`> value2=something else`
`> value3=\`hostname\``
`> value4=onetwothree`
`EOT`
......但这会导致看起来像这样......
# cat > /tmp/answers.txt <<EOT
> value1=blah
> value2=something else
> value3=\
主机名
&GT; VALUE4 = onetwothree
EOT
答案 0 :(得分:30)
The original Markdown syntax documentation covers this;它说你必须使用多个反引号括起代码表达式,所以像这样:
``here you go - ` this was a backtick``
渲染如下:
here you go - ` this was a backtick
如果你想在普通文本中包含反引号,而不是在代码块中,反斜杠转义就可以了。例如:
Here's a backtick: \`; then, here's another one: \`
渲染如下:
这是一个反击:`;那么,这是另一个:`
(我在commonmark和github上对此进行了测试,但行为相同,因此它不仅仅是一个很奇怪的事情)
答案 1 :(得分:9)
我认为您需要将“分隔符”从单个后退刻度更改为双倍...
即:
``value3=\`hostname\` ``
应该渲染
> value3=\`hostname\`
答案 2 :(得分:9)
下面的代码块可以解决问题。
```
# cat > /tmp/answers.txt <<EOT
> value1=blah
> value2=something else
> value3=`hostname`
> value4=onetwothree
EOT
```
三个Backtick意味着它的代码片段和一个片段必须以另外三个Backtick结束。
有关Markdown的更多帮助,请参阅 CheatSheet.