我经常发现使用以下方法打印文本很有用
echo 'stuff' | lpr
每当文本超过小段落时,lpr 输出就会变得难以阅读;因此,我想为文本添加左右边距。一个简单的右边距修复方法是
echo 'stuff' | fmt -w 55 | lpr
但这不会在文本左侧添加任何边距。
有没有简单的方法可以实现这一点?
答案1
还有一个-w
选项格式它设置了行的最大宽度和-s
拆分长行的选项。默认值为-w
75 个字符。我的快速解决方案类似于以下内容:
cat [stuff] | fmt -sw 50 | awk '{printf " "$0"\n"}' | lpr
这里格式限制每行字符数(本例中为 50 个)并自动分割长行。然后此输出通过管道传输到awk在第一个引号之间添加尽可能多的空格printf,然后将行从格式并最终以 来换行"\n"
。
我相信这可以做到awk但我对你的偏见太深了格式我保留了它。一旦我有了表达方式,我会添加编辑awk 仅有的。
6 个字符