7

Я пытаюсь напечатать документ Word из командной строки, но мне нужно указать параметры печати, для которых я обычно использую lpr. Это команда, которую я использую

libreoffice -p "filename.doc"

Мне нужно иметь возможность указать имя пользователя (-U), это возможно? Следующее не работает

libreoffice -p "filename.doc" -U username

Должно ли это работать или есть другой способ?

3 ответа3

5

Вы не можете передать параметры командной строки lpr в libreoffice . Два возможных решения:

  1. Одношаговое решение (на мой взгляд, лучшее решение): используйте unoconv для вывода PDF в stdout переданный в lpr:

    $ unoconv --stdout filename.doc | lpr -U username -P the_printer_name
    
  2. Трехшаговое решение (если вы не хотите / не можете использовать 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
    
1

Вот как я печатаю документ, используя LibreOffice и принтер CUPS в Debian 9:

/usr/bin/libreoffice --pt [cupsname] /home/username/filename.odt

Это работает очень хорошо без каких-либо средних шагов.

0

Под, $ libreoffice --help

Использование: soffice [опции] [документы ...]

soffice -p File_name.odt

Работал на меня.

libreoffice -p File_Name.odt только что открыл программу, lpr просто плюнул на мусор.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .