отправка необработанных данных через usb в linux
я печатаю некоторые этикетки на принтере Zebra TLP-2844 и отлично справляюсь с windows, отправляя инструкции EPL на общий USB-принтер следующим образом:
шильдике.prn > my-pczebra
и, похоже, работает с последовательными портами с
шильдике.prn > COM1
теперь я пытаюсь то же самое на linux, но это становится очень сложно! Моей первой догадкой было:--1-->
метки кота.prn//dev/bus/usb / 005 / 002
Так как мой принтер находится на шине 005, устройство 002 (проверил его с помощью команды lsusb), но он не работает вообще, так как я получаю плохой
bash:/dev/bus/usb/005 / 002: в разрешении отказано
какие-нибудь догадки?
4 ответов
команда, которую вы сделали
cat Label.prn | /dev/bus/usb/005/002
на /dev/bus/usb/005/002
, который не является исполняемым, поэтому "доступ запрещен".
Правильная команда будет похожа на windows
cat Label.prn > /dev/bus/usb/005/002
однако, не уверен, что вы действительно можете написать что-нибудь на принтер, как это в linux. Если принтер настроен правильно, вы также можете попробовать:
lpr Label.prn
в случае, если кто-то еще пытается получить доступ к портам принтера raw USB; проблема "отказано в разрешении" обходится путем добавления пользователя в группу "lp", например:
$ sudo usermod -aG lp USERNAME
Где USERNAME-ваше имя пользователя.
извините за мой английский.
Я тестировал здесь, мой принтер tlp2844 подключается на USB, в моей встроенной плате arm9 с linux.
Я набрал в командной строке:
е "ОД\р\н\р\кd5\р\в NS2\Р\НЗТ\Р\nQ128, 24\р\nq400\Р\на15-й,10,0,2,1,1,Н\"ТЭСТ\"\Р\НП1\Р\бэ\р\н" > на /dev/lp0
и... the тест напечатано
- вы должны изменить режим доступа для устройства /dev/usb/lp0:
sudo chmod a+w /dev/usb/lp0
- и затем вы можете распечатать метку с помощью команды copy:
cp test.zpl /dev/usb/lp0
также вы можете создать свою собственную систему сборки в Sublime Text, например:
{
"cmd": ["cp", "$file", "/dev/usb/lp0"],
"encoding": "utf8"
}
и отправить файлы на принтер, нажав клавиши Ctrl+B сразу после окончания редактирования метки.
или вы можете попробовать мой инструмент для отправки ярлыков zpl на принтер через ПРОТОКОЛ TCP/ИС: https://github.com/kashamalasha/AutoIt_ZebraTester
он был написан на языке сценариев AutoIt, поэтому вам нужно установить AutoIt для его создания. К сожалению, на английском нет описания, только на русском, но я могу написать его очень скоро, если понадобится.