Incron automatischer ausdruck von pdfs in einem Ordner

Registriere dich jetzt, um exklusive Vorteile zu genießen! Als registriertes Mitglied kannst du Inhalte herunterladen und profitierst von einem werbefreien Forum.
Mach mit und werde Teil unserer Community!
  • Habe bezugs der Berechtigung auch gerade festgestellt das ich zwar bei

    - Inhalt anzeigen : jeder

    - Inhalt ändern: jeder

    - Ausführen: Jeder

    eingestellt habe, aber sobald ich die datei Schliese wird wieder

    - Inhalt anzeigen : jeder

    - Inhalt ändern: Nur Besitzer

    - Ausführen: Niemand

    eingestellt ?

  • Kopiere dein Script nach $HOME, setze die Rechte chmod 755 autoprint.sh" und rufe es dann auf

    /home/pi/autoprint.sh /media/pi/KINGSTON/Fax/1.pdf


    Der Desktop war schon eine miese Wahl als Ablageort für Scripte, ein vfat-USB-Stick ist aber noch deutlich ungeeigneter.

    Der wird wahrscheinlich noexec gemountet sein mount -t vfat | column -t.


    Dass die Rechte zurückgesetzt werden ist klar. Es ist vfat - ein non-Unix Dateisystem, das mit linux-Rechten nichts anfangen kann (die müssten über mount-Optionen gesetzt werden).

    Wenn du nichts zu sagen hast, sag einfach nichts.

    Edited once, last by llutz ().

  • Der Desktop war schon eine miese Wahl als Ablageort für Scripte, ein vfat-USB-Stick ist aber noch deutlich ungeeigneter.

    Der wird wahrscheinlich noexec gemountet sein

    Mea culpa, ich wusste nicht das die wahl des Pfades so wichtig dafür ist.

    Datei wurde verschoben.

    Beim Ausführen bekam ich folgende Meldung:

    Code
    /home/pi/autoprint.sh: Zeile 2: [: application/pdf: Einstelliger (unärer) Operator erwartet.

    Druck wird ausgelöst, allerdings weiterhin nur eine leere Seite gedruckt.

  • Code
    lpr -P Canon_MG3600:series "$fname"

    Ist das noch der aktuelle Code? Mich stört das :-Zeichen im Namen. Bist du sicher, dass der Drucker so heisst, also mit ":" in der Mitte? Wenn ja dann solltest du den Druckernamen in "-Zeichen setzen "Canon_MG3600:series"


    /home/pi/autoprint.sh: Zeile 2: [: application/pdf: Einstelliger (unärer) Operator erwartet.

    Hier stimmt die Abfrage nicht. Es sollen unterschiedliche Datentypen verglichen werden. Kannst du den aktuellen Code zeigen?

    Glaube ersetzt kein Wissen

    Edited once, last by bombom ().

  • Und woher dann die Fehlermeldung?

    Deshalb #24.

    Entweder passt das Encoding nicht mehr oder es handelt sich nicht mehr um den Code aus #16.


    Bist du sicher, dass der Drucker so heisst, also mit ":" in der Mitte?

    Cloed Paste bitte mal die Ausgabe von: lpstat -a

    Wenn du nichts zu sagen hast, sag einfach nichts.

    Edited once, last by llutz ().

  • Deshalb #24.

    Code
    pi@RPi:$ /home/pi/autoprint.sh 1.pdf
    /home/pi/autoprint.sh: Zeile 3: Syntaxfehler beim unerwarteten Wort `$'\r''
    '/home/pi/autoprint.sh: Zeile 3: `fi  

    Das ist die Fehlerausgabe, wenn ich den Code aus #16 in Windows in den Editor kopiere, speichere und auf einem RPi ausführe.

    Bash: aus #16
    fname="$1"
    if [ $(file -b --mime-type "$fname") != "application/pdf" ] ; then  exit 0
    fi
    lpr -P Canon_MG3600:series "$fname"

    Und ja, es steht an jedem Zeilenende ein 0x0D 0x0A (aka CR LF).

    Glaube ersetzt kein Wissen

  • Deshalb #24, denn es interessiert, was im echten SCRIPT steht.

    Wahrscheinlich aber das gleiche.


    Das ist die Fehlerausgabe, wenn ich den Code aus #16 in Windows in den Editor kopiere, speichere und auf einem RPi ausführe.

    Was erwartest du als Erkenntnis, wenn du einen ungeeigneten Editor benutzt? Es gibt auch für Windows Editoren, die unix-lineendings beherrschen.

    Wenn du nichts zu sagen hast, sag einfach nichts.

    Edited once, last by llutz ().

  • So erstmal danke für eure Hilfe, ich hoffe ich kann alles in einem beantworten

    Hast du das Script unter Windows geschrieben und kopiert?

    Was sagt file /home/pi/autoprint.sh

    Script wurde auf dem Pi geschrieben, habe dafür eine textdatei geöffnet, Code geschrieben, Dateiendung geändert.


    eben gemacht

    Code
    file /home/pi/autoprint.sh
    /home/pi/autoprint.sh: ASCII text


    Ist das noch der aktuelle Code? Mich stört das :-Zeichen im Namen. Bist du sicher, dass der Drucker so heisst, also mit ":" in der Mitte? Wenn ja dann solltest du den Druckernamen in "-Zeichen setzen "Canon_MG3600:series"

    Sorry hier hat sich ein Fehler meinerseits eingeschlichen, Der drucker heißt Canon_MG3600_series


    Paste bitte mal die Ausgabe von: lpstat -a

    Code
    lpstat -a
    Canon_MG3600_series akzeptiert anfragen seit Sa 23 Nov 2019 17:18:21 CET


    Hier gerne nochmal aktuell was im Script steht:

    Code
    fname=$1
    if [ $(file -b --mime-type "$fname") !="application/pdf" ] ; then
    exit 0
    fi
    
    lpr -P Canon_MG3600_series "4fname"

    Nur zur Info, meine Kenntnisse im programmieren sind sehr sehr rudimentär. Sollte ich also irgendwo beim erstellen schon einen Fehler gemacht haben bitte ich dies zu entschuldigen. Wie gesagt er Gibt ja einen Druckbefehel an den Drucker weiter, leider druckt er nur leere seiten.

    Wenn ich das PDF händisch öffne, zeigt mir der Pi circa 20sek. lang nur image an, danach wechselt er auf den Inhalt . Wenn ich dann das pdf händisch drucke wird auch nur eine leere Seite gedruckt :(

  • Habe gerade festgestellt das beim händischen drucken, in den Druckeinstellungen an Seitengröße Anpassen nicht aktiviert war. Hiernach wurde die PDF richtig gedruckt. Weis aber nicht in wieweit das zusammenhängt

  • Du kannst lpr viele Optionen mitgeben. Eine Liste der von deinem Drucker akzeptierten Optionen gibt dir

    lpoptions -p Canon_MG3600_series -l aus. Info dazu findest du hier

    https://www.cups.org/doc/options.html


    Typo in deinem Script Zeile 6: "$fname"

    Gib dem Script bei der Gelegenheit gleich mal einen Shebang mit:

    Bash
    #!/bin/sh
    fname="$1"
    if [ $(file -b --mime-type "$fname") !="application/pdf" ] ; then
      exit 0
    fi
    lpr -P Canon_MG3600_series "$fname"

    Wenn du nichts zu sagen hast, sag einfach nichts.

  • Danke Danke Danke,

    Programm funktioniert einwandfrei.

    Habe auch rausbekommen warum die PDF leer waren, habe immer zum Testen PDF dateien genommen die Ich mit meinem Iphone gescannt hatte. Irgendwie vertragen die sich nicht.

  • Hallo in die Runde,

    Ich habe leider einen großen Fehler begangen und ein Upadte bei meinem Pi durchgeführt. Dabei het er sich komplett gefressen und nur eine neuinstallation des jetzigen PiOs(Release 3.6) hat geholfen. Ich habe auch wieder alles wie damals eingerichtet. Mein Problem ist das die .sh Datei die ich zum automatischen Drucken benutzt habe nichtmehr funktioniert. Hat vielleicht jemand eine Funktionierende Autoprint.sh die er mir geben könnte? Oder könnt ihr mir anderweitig weiterhelfen?


    Danke schonmal für eure Antworten

    und Never Change a running System :)