Linux 从终端输出2列到1列读取pdf
最近我喜欢用较少的命令阅读pdfLinux 从终端输出2列到1列读取pdf,linux,awk,pipe,less-unix,Linux,Awk,Pipe,Less Unix,最近我喜欢用较少的命令阅读pdfless file.pdf 我想读一本两栏格式的pdf书。 应该有一个命令在一列中输出,对吗 注意:对于每个页面,使用^L 像带awk的烟斗? 不介意使用vi或任何其他命令 格式示例 9 ^LAgradecimientos
less file.pdf
我想读一本两栏格式的pdf书。
应该有一个命令在一列中输出,对吗
注意:对于每个页面,使用^L
像带awk的烟斗?
不介意使用vi或任何其他命令
格式示例
9
^LAgradecimientos Agradecimientos
maciones de la psiquiatría y la ciencia tradicional de Occi- do al poder contar con la amistad personal de muchos de los
dente. pioneros de este nuevo abordaje psicológico. Estas personas
También debo agradecer el aliento y el apoyo de varios físi- tan especiales han sido durante muchos años una fuente de ins-
这是一个开始:
$ cat tst.sh
#!/usr/bin/env bash
awk -v ff='\f' -F'\n' '
s = index($0,ff) {
prt()
indent = s - 1
width = length($0) - indent
midway = int(width / 2)
next
}
indent { sub("^ {"indent"}","") }
/[^[:space:]]/ {
left = left substr($0,1,midway) ORS
right = right substr($0,midway+indent) ORS
}
END { prt() }
function prt() {
printf "%s", left
printf "%s", right
left = right = ""
}
' "${@:--}"
试着增强这一点,以便为您充分发挥作用,如果您无法回答并且有任何具体问题,请发布一个新问题。我正在尝试查找类似pdf2text(按^L|awk column拆分)的代码?您的问题必须包含所有相关信息,包括简洁、可测试的示例输入、预期输出以及您迄今为止为自己解决问题所做的尝试。再一次看,这太完美了,莫顿先生。我做到了:pdftotext“mente.pdf”-然后是布局。/reader.sh mente.txt |这超出了我的bash技能。谢谢。不客气,但要明确的是,这是一个awk脚本而不是bash脚本(除了我提供的调用awk的包装器,以防您想使其成为
pdf2text | awk…
或类似内容)。实际上,我的想法是在终端中使用一行程序,是的。但是如果它能完成任务,我不在乎工具或语言。
$ ./tst.sh file
9
maciones de la psiquiatría y la ciencia tradicional de Occi-
dente.
También debo agradecer el aliento y el apoyo de varios físi-
do al poder contar con la amistad personal de muchos de los
pioneros de este nuevo abordaje psicológico. Estas personas
tan especiales han sido durante muchos años una fuente de ins-