生成PDF时出错。未定义的控制顺序

时间:2019-05-18 09:34:46

标签: markdown pandoc

我一直在尝试将我的笔记从学校转换为PDF,但我不断出现以下错误:

Error producing pdf.
! Undefined control sequence.
l.55 ...i letters:"; cat dutch | grep -vP '(.).*\1

我认为这可能与必须转义的特殊字符或类似字符有关,但是经过一番谷歌搜索之后,我仍然没有找到解决方案。

我已经尝试将pandoc notes.md -o notes.pdfpandoc notes.md -o notes.pdf --pdf-engine=xelatex作为命令。您可以在下面找到我的笔记:

# Vraag 1
for i in {14,15,16}; do echo "$i letters:"; cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$" ; done

OF

for i in {14,15,16}; do echo "$i letters:" $(cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$") ; done

UNIEKE LETTERS: grep -vP '(.).*\1'


# Vraag 2
tshark -r bruteforce.pcap -Y 'ftp.request.command == USER' -T fields -e 'ftp.request.arg' | sort -u


# Vraag 3
echo "Time = $(date '+%X (%x)')"

# Vraag 4
openssl enc -d -a -in secret

OF

cat secret | base64 -d 

# Vraag 4
echo | openssl s_client -connect wiki.uclllabs.be:443 2>/dev/null | openssl x509 -noout -pubkey -serial -fingerprint

如您所见,错误发生在第一行,但我无法弄清楚出了什么问题。

1 个答案:

答案 0 :(得分:0)

大概这些命令应该视为代码块?在这种情况下,应该缩进它们:

# Vraag 1

    for i in {14,15,16}; do echo "$i letters:"; cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$" ; done

或围起来:

# Vraag 1

```
for i in {14,15,16}; do echo "$i letters:"; cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$" ; done
```

这两个版本均应使用Pandoc进行编译。标题之后,我还添加了空白行。这可能不是必需的,但是可以提高源代码的可读性。

打破源代码块的可读性可能也是一个更好的主意:

# Vraag 1

```
for i in {14,15,16}; do
  echo "$i letters:";
  cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$";
done
```