在命令行中格式化文件以进行打印

在命令行中格式化文件以进行打印

lpr每当我使用或命令打印文本文件时lp,单词会在一行末尾被截断并继续到另一行;例如,“understand”将在第一行末尾拆分为“unde”,在另一行开头拆分为“rstand”。有没有办法以某种方式证明文件文本适合打印?我已经尝试过lpr -p-o media=a4、 以及适合页面选项,但单词仍然被切断。

对我有用的解决方案:

  1. 加雷斯·红的foldfold -s textfile.txt | lpr
  2. fmt找到命令这里这里: fmt -u -w 80 textfile.txt | lpr;请注意,宽度 80 可以更改为您喜欢的任何内容,但对我来说这似乎工作得很好

答案1

使用fold。页面摘录man

Wrap  input  lines in each FILE (standard input by default), writing to
standard output.

-b, --bytes
   count bytes rather than columns

-c, --characters
   count characters rather than columns

-s, --spaces
    break at spaces

-w, --width=WIDTH
    use WIDTH columns instead of 80

使用fold(也许使用该-s选项,这样它就不会在单词中间断行)将文档设置为大约 80 个字符宽并打印:

fold -s myfile.txt | lpr

或者,保存格式化版本:

fold -s myfile.txt > output.txt

相关内容