2010-08-19 7 views
5

ich drucke einige Etiketten auf einem Zebra TLP-2844 Drucker und getan es gut an den Fenstern durch die EPL Anweisungen an den gemeinsam genutzten USB-Drucker zu senden, wie folgend:Senden Rohdaten über USB unter Linux

Typ Label.prn> \ my-pc \ Zebra

und es scheint mit

Typ mit seriellen Schnittstellen zu arbeiten Label.prn> COM1

Jetzt versuche ich das gleiche auf Linux, aber es wird wirklich hart! Meine erste Schätzung war:

cat Label.prn |/Dev/bus/usb/005/002

da auf dem Bus 005 mein Drucker ist, Gerät 002 (markiert mit lsusb Befehl), aber es überhaupt nicht funktioniert, wie ich ein schlechtes

bekommen

bash:/dev/bus/usb/005/002: Zugriff verweigert

Alle Vermutungen?

Antwort

4

Der Befehl Sie

tat
cat Label.prn | /dev/bus/usb/005/002 

werden versuchen /dev/bus/usb/005/002 zu laufen, was nicht ausführbar ist, also „Zugriff verweigert“. Der korrekte Befehl wäre, ähnlich wie Fenster

cat Label.prn > /dev/bus/usb/005/002 

jedoch nicht sicher, ob Sie tatsächlich etwas an einen Drucker wie in Linux schreiben können. Wenn der Drucker richtig eingerichtet ist, können Sie auch versuchen:

lpr Label.prn 
+0

hat nicht funktioniert =/ Ich habe vergessen zu erwähnen, dass es keine Treiber für den Drucker unter Linux gibt, ich versuche, dies wie "Rohdaten" zu senden, um zu sehen, was passiert! –

+0

Ich denke, du musst # root sein, um das zu können. – karlphillip

+3

Gelöst es! Es scheint unmöglich zu sein, die Daten direkt an das Gerät zu senden, aber wenn man den Drucker mit CUPS generischem Text-Druckertreiber einstellt und lpr benutzt, funktioniert es perfekt! Danke vielmals! –

2

Falls jemand versucht, roh USB-Drucker-Ports zuzugreifen; Die „Erlaubnis verweigert“ Problem, indem Sie Ihren Benutzer zur Gruppe „lp“, wie so umgangen wird:

$ sudo usermod -aG lp USERNAME 

wo Benutzername Ihr Benutzername ist.

2

Sorry von Mein Englisch.

Ich habe hier getestet, mein Drucker TLP2844 verbinden auf USB, in meinem Embedded Arm9 Board mit Linux.

I in Eingabeaufforderung eingegeben:

printf „OD \ r \ nN \ r \ ND5 \ r \ NS2 \ r \ NZT \ r \ nQ128, 24 \ r \ nq400 \ r \ nA15,10, 0,2,1,1, N, "TESTE" \ r \ nP1 \ r \ nFE \ r \ n ">/dev/lp0

und ...die TEST

gedruckt
1
  1. Sie sollten Zugriffsmodus für/dev/usb/lp0 Gerät ändern: sudo chmod a+w /dev/usb/lp0
  2. Und dann können Sie ein Label mit Kopie Befehl drucken: cp test.zpl /dev/usb/lp0

Sie können auch erstellen Sie Ihr eigenes Build-System in Sublime Text zum Beispiel:

{ 
    "cmd": ["cp", "$file", "/dev/usb/lp0"], 
    "encoding": "utf8" 
} 

und Dateien an den Drucker durch pressin senden g Strg + B Tasten unmittelbar nach dem Bearbeiten der Beschriftung.

Oder Sie können mein Werkzeug senden zpl Etiketten an den Drucker über TCP/IP versuchen: https://github.com/kashamalasha/AutoIt_ZebraTester

Es wurde geschrieben am AutoIt Script-Sprache, so dass Sie AutoIt installieren müssen, es zu bauen. Leider gibt es keine Beschreibung auf Englisch, nur Russisch, aber ich kann es sehr bald schreiben, wenn Sie es brauchen.