我想在不打开 Libreoffice 的情况下打印用户指定数量的标签

我想在不打开 Libreoffice 的情况下打印用户指定数量的标签

我在一家餐厅使用 Ubuntu。在这种情况下,我使用 Brother 标签打印机打印“使用期限”标签。

libreoffice -p ~/Desktop/TestLabel.odt 要打印一个,我可以使用从启动器执行的 bash 脚本中的命令。

对于某些项目,一次打印多个标签比多次单击启动器更方便。

有没有办法提示用户输入数量并打印多次?

谢谢

答案1

使用 非常简单zenity。使用以下命令展开脚本:

NUMBER=$(zenity --entry --text="How many Labels should be printed?" --entry-text=1)

在此处输入图片描述

变量 $NUMBER 现在包含用户的输入。如果用户只是按下“OK”,它将包含“1”。

不幸的是,libreoffice它不接受指定份数的标志。因此,在打印多份副本时,您必须多次运行 libreoffice 命令。但是,您可以使用 libreoffice 来准备文件,然后使用它lpr进行实际打印:

libreoffice --print-to-file --printer-name printername --outdir /tmp/ file.doc
lpr /tmp/file.ps -${NUMBER} -P printername
rm /tmp/file.ps

lpr接受副本数标志-#

编辑:

如果lpr没有效果,只需多次调用 libreoffice:

for (( c=1; c<=${NUMBER}; c++ )); do
  libreoffice -p file.doc
done

相关内容