Печать из командной строки с помощью команд LibreOffice, lpr?
Я пытаюсь напечатать документ Word из командной строки, но мне нужно указать параметры печати, для которых я обычно использую lpr. Это команда, которую я использую
libreoffice -p "filename.doc"
Мне нужно иметь возможность указать имя пользователя (-U), это возможно? Следующее не работает
libreoffice -p "filename.doc" -U username
Должно ли это работать или есть другой способ?
3 ответа
Вы не можете пройти lpr
параметры командной строки для libreoffice
, Два возможных решения:
Одношаговое решение (на мой взгляд, лучшее решение): использовать unoconv для вывода PDF в
stdout
по трубопроводуlpr
:$ unoconv --stdout filename.doc | lpr -U username -P the_printer_name
Трехступенчатое решение (если вы не хотите / не можете использовать
unoconv
): использоватьlibreoffice --print-to-file
во временный файл +lpr
файла + удалить временный файл (к сожалению, libreoffice по- прежнему не поддерживает печать на стандартный вывод):$ libreoffice --headless --print-to-file --printer-name the_printer_name --outdir /tmp filename.doc $ lpr -U username /tmp/filename.ps -P the_printer_name $ rm /tmp/filename.ps
Вот как я печатаю документ, используя LibreOffice и принтер CUPS в Debian 9:
/usr/bin/libreoffice --pt [cupsname] /home/username/filename.odt
Это работает очень хорошо без каких-либо средних шагов.
Под, $ libreoffice --help
Использование: soffice [опции] [документы...]
soffice -p File_name.odt
Работал на меня.
libreoffice -p File_Name.odt только что открыл программу, lpr просто плюнул на мусор.