lpr на Cygwin добавляет.lnk к моему значению PRINTER

У меня есть Cygwin на компьютере с Windows 7. В моем .bashrc файл, который я пробовал

export PRINTER=\\\\myPrintServer\\myPrinter

Избегая обратной косой черты, которая, когда я печатаю $lpr -D, дает мне

Windows Printer Name = '\\myPrintServer\myPrinter.lnk'
lpr: printer error: can't open '\\myPrintServer\myPrinter.lnk' for writing: The printer name is invalid.

Но я не набрал .lnk там и не думай, что я этого хочу. Если это проблема, как мне заставить его не добавлять .lnk? Если проблема в чем-то другом, я весь в ушах.

2 ответа

Я бы попробовал

net use lpt1 \\myPrintServer\myPrinter

затем

export PRINTER=lpt1
lpr -D

Если бы это не помогло, я бы попробовал

/cygdrive/c/WINNT/system32/lpr -S server -P printer filename

после включения Unix (LPD) печати на сервере.

Я использую Enscript для форматирования распечаток, но, поскольку он использует lpr, эта подсказка может вам помочь.

узнав, что к некоторым принтерам можно получить доступ по имени, которое вы найдете в меню добавления принтеров Windows, мне удалось создать сценарий, который обернул эти две строки

экспорт ПРИНТЕР='HP LaserJet Pro M118-M119' enscript --media=Letter -G -h "$@"

Хорошо использовать команду lpr -D cygwin для отображения списка имен принтеров, которые вы можете установить в переменную среды PRINTER, что вы и делаете!

Кстати, «lpr» в пакете cygwin cygutils-extra (не установлен по умолчанию). Я знаю, что вы это знали, но другие читатели, возможно, нет.

Другие вопросы по тегам