shell-skript -> Programm läuft nicht, wenn ich skript in Dolphin starte

Hinweis: In dem Thema shell-skript -> Programm läuft nicht, wenn ich skript in Dolphin starte gibt es 11 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hallo Gemeinde,
    ich will mich gerade mit Shell-Skript vertraut machen und scheitere bereits mit meinem ersten Projekt:
    Ich will mit GPG eine verschlüsselte Datei entschlüsseln, dann die Datei verwenden und anschließend
    wieder verschlüsseln. Hier ist das Skript (erster Versuch):


    #!/bin/sh


    gpg --aaa.odt --decrypt bbbTest
    libreoffice --writer aaa.odt
    #rm Linux_Tipps.odt


    exit 0


    Wenn ich das Skript aus der Konsole heraus starte, funktioniert gpg und die Abfrage nach der
    Passphrase erscheint wie gewünscht. Das libreoffice funktioniert auch. Aber wenn ich das Skript
    aus Dolphin per Mausklick starte (Klick => Ausführen), dann passiert garnichts mehr. Die Abfrage
    der Passphrase erscheint nicht und auch sonst passiert nichts mehr.


    Hätte jemand den entscheidenden Tipp? Schon mal danke im voraus!

    Für den Inhalt des Beitrages 94304 haftet ausdrücklich der jeweilige Autor: myhelimax

  • Oups! Das Kommando habe ich falsch in die Eingabe übertragen. Im Original heißt es:


    gpg --output aaa.odt --decrypt bbbTest


    Damit läuft es aber nur in der Konsole.

    Für den Inhalt des Beitrages 94308 haftet ausdrücklich der jeweilige Autor: myhelimax

  • Die Berechtigungen passen.


    Zitat von myhelimax

    ... funktioniert gpg und die Abfrage nach der
    Passphrase erscheint wie gewünscht.

    Wo soll den die Abfrage deiner Meinung nach stattfinden, wenn du das Skript direkt aus dem Dateimanager startest?
    Da muss er ja zwangsläufig passen.

  • Ich verstehe, was du meinst. Nur: Beim Start aus der Konsole geht ein Grafikfenster (pinentry-qt4) auf.
    Und der LibreOffice-Writer macht sich auch ein eigenes Fenster auf, wenn ich das Skript in Dolphin
    ohne den Aufruf von gpg starte. Das müßte doch irgendwie auch mit dem gpg so gehen, oder?


    Gruß


    myhelimax

    Für den Inhalt des Beitrages 94320 haftet ausdrücklich der jeweilige Autor: myhelimax

  • In der Konsole ist der Pfad gegeben. Beim anklicken ist dein home "/home/DeinName/" der Ausführungsort.


    Bash
    #!/bin/sh
    gpg --output /home/meinName/Ort/aaa.odt --decrypt /home/meinName/Ort/bbbTest
    libreoffice --writer /home/meinName/Ort/aaa.odt
    #rm Linux_Tipps.odt
    exit 0

    Keiner wird gezwungen OpenSUSE zu benutzen !


    Ich genieße jeden Tag mit meinem SuSE Rechnern seit 1996 ^^

    Für den Inhalt des Beitrages 94324 haftet ausdrücklich der jeweilige Autor: Flytronik

  • Hallo Flytronik,


    ich hab's versucht, aber es klappt einfach nicht. Ich erwarte natürlich, daß da das
    qt4-Grafikfenster für die Passphrase aufgeht - eben so wie in der Konsole. Jetzt habe ich noch eine Idee:
    In der Konsole gibt gpg bzw. gpg2 zusätzlich auch noch einigen Text aus. Also hab ich das versucht:


    gpg --output /home/meinName/Ort/aaa.odt --decrypt /home/meinName/Ort/bbbTest > check.txt


    Ich wollte den Text nach check.txt umleiten. Die Datei wird auch erzeugt, bleibt aber leer. Kann
    ich so irgendwie ein errorlog kriegen? Vielleicht muß die Grafikausgabe irgendwie vom Dateimanger
    abgekoppelt werden.


    Gruß


    myhelimax

    Für den Inhalt des Beitrages 94339 haftet ausdrücklich der jeweilige Autor: myhelimax

  • Eine Fehlerumleitung wäre dann aber 2> für Stderr und 1> für Stdout.


    Also gpg --output /home/meinName/Ort/aaa.odt --decrypt /home/meinName/Ort/bbbTest 2> check.txt


    Du kannst aber auch die Zeilen in Reihe abarbeiten, also erst wenn eine Zeile erfolgreich beendet ist.


    Das geht mit &&


    Bash
    #!/bin/sh
    gpg --output /home/meinName/Ort/aaa.odt --decrypt /home/meinName/Ort/bbbTest 2> check.txt && # Erst wenn erfolgreich dann starte Libreoffice
    libreoffice --writer /home/meinName/Ort/aaa.odt
    #rm Linux_Tipps.odt
    exit 0

    Keiner wird gezwungen OpenSUSE zu benutzen !


    Ich genieße jeden Tag mit meinem SuSE Rechnern seit 1996 ^^

    Für den Inhalt des Beitrages 94341 haftet ausdrücklich der jeweilige Autor: Flytronik

  • Hallo Flytronik,


    jetzt wird es interessanter: In der Fehlerausgabe kriege ich:


    gpg: enabled debug flags: memstat
    gpg: cannot open `/dev/tty': Kein passendes Gerät bzw. keine passende Adresse gefunden


    Ihr hattet also zumindest damit recht: Das System weiß nicht, wohin es die Ausgabe
    schicken soll. Ich hatte aber erwartet, daß das Grafikfenster unabhängig vom Filemanager und
    von der Konsole auf den Bildschirm geschickt wird. Warum das dann bei der Konsole klappt
    und auch beim libreoffice, das ist mir trotzdem nicht klar. In beiden Fällen braucht das System
    ja auch ein Ziel und es findet dieses dann auch.
    Das Grafikfenster wollte ich nicht mitschicken, weil da einige private Infos zu den Schlüsseln
    drinstecken.


    Hast du noch eine Idee?


    Viele Grüße


    myhelimax

    Für den Inhalt des Beitrages 94368 haftet ausdrücklich der jeweilige Autor: myhelimax