Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何使用ANSI转义打印包含文本的文件_Linux_Bash_Shell_Command Line - Fatal编程技术网

Linux 如何使用ANSI转义打印包含文本的文件

Linux 如何使用ANSI转义打印包含文本的文件,linux,bash,shell,command-line,Linux,Bash,Shell,Command Line,我想打印一个包含ANSI转义文本的文件 以下是文件内容(使用bash脚本生成): 在终端中将文件打印到屏幕时,效果很好: cat example.txt 显示: 粗体消息示例 普通字体信息 但当我尝试将其发送到打印机时,我的问题是: lp example.txt 印刷品: 1mbold消息示例2M 普通字体信息 有没有办法正确打印此文件?也许使用groff(可以用来打印样式化的手册页),但我没有用它获得任何有效的结果…也许可以处理这个问题(但我不确定,您应该试试) 我更愿意建

我想打印一个包含ANSI转义文本的文件

以下是文件内容(使用bash脚本生成):

  • 在终端中将文件打印到屏幕时,效果很好:

      cat example.txt
    
    显示:

    粗体消息示例

    普通字体信息

  • 但当我尝试将其发送到打印机时,我的问题是:

      lp example.txt
    
    印刷品:

    1mbold消息示例2M

    普通字体信息

有没有办法正确打印此文件?也许使用groff(可以用来打印样式化的手册页),但我没有用它获得任何有效的结果…

也许可以处理这个问题(但我不确定,您应该试试)

我更愿意建议更改获取此类文件的方式(也就是说,还提供一些可选的输出格式)。 我的意思是,生成这样一个文件(或这样一个输出)的程序可以生成一个更可打印的输出(可能通过生成一些中间格式,例如LaTeX、Lout、groff或HTML格式,然后分叉相应的命令来打印它。该程序也可以直接生成PDF,通过或等等…)


此外,这可能取决于打印机和驱动程序

这个文件最初是如何产生的?您可能是指
cat
而不是
echo
…但是,该文件是如何生成的?然后,改进bash脚本以生成其他内容。。。请看我的答案……谢谢,事实上我已经在使用:ANSI转义;a2ps似乎不太管用……我最终生成了另一种输出格式(html),可以更容易地打印
  lp example.txt