• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Skript per Doppelklick öffnen

Ausgehend von meinem Beitrag viewtopic.php?f=38&t=99141#p720736 bin ich gerade dabei, die einzelnen Skripte zu modifizieren und zusammenzufassen.
Hier ist der gegenwärtige Stand der Dinge:
Code:
#!/bin/bash
echo "Dateien und Verzeichnisse        = 1"
echo "Home-Verzeichnis 	         = 2"
echo "Wiederherstellung und Protokoll  = 3"
read answer

case $answer in

  1)
cd ~/
mkdir WEBDAV tmp
cd ~/Datensicherung
java -jar .MindcryptApp.jar
cd ~/tmp/ 
split --bytes=100m *.mc $(date +'%d%m%Y%H%M%S')
rm -rf *.mc
ls > text.txt
mv text.txt ~/WEBDAV/
konsole -e cadaver
 ;;
  2)
cd ~/
mkdir WEBDAV tmp
cd ~/tmp/
mkdir Home-Verzeichnis
cd ~
cp -a * .[^.]* ~/tmp/Home-Verzeichnis
cd ~/tmp/
zip -r home.zip Home-Verzeichnis
rm -rf Home-Verzeichnis
cd ~/Datensicherung
java -jar .MindcryptApp.jar
cd ~/tmp/
split --bytes=100m home.mc $(date +'%d%m%Y%H%M%S') 
rm -rf home.mc
ls > text.txt
mv text.txt ~/WEBDAV/
cd ~/tmp/
rm -rf home.zip
konsole -e cadaver
;;
  3)
cd ~/
mkdir WEBDAV tmp
cd ~/tmp/
find ./ -maxdepth 1 -type f -name "*" | while read l; do mv -v "$l" "${l: -6}"; done
cat aaaaa? > *.mc
rm -rf aaaaa?
cd ~/Datensicherung
java -jar .MindcryptApp.jar
cd ~/tmp/
rm -rf *.mc
cd ~/tmp/
ls -laR  > text_1.txt
unzip -l *.zip > text_2.txt
mv * ~/WEBDAV
cd ~/WEBDAV/
cat text.txt text_1.txt text_2.txt > Protokoll_$(date +'%d-%m-%Y_%H:%M ')
rm -rf text.txt text_1.txt text_2.txt
;;
esac
exit 0

Starte ich nun das Skript (Name "Test") im Terminal mit dem Kommando ../Test, gibts keine Probleme.
Was muss ich aber tun, damit sich das gleiche Skript von der graphischen Oberfläche aus startet?
( Doppelklick -> Terminalfenster öffnet sich -> Echo-Anweisungen werden ausgeführt )
 
der Verknüpfung "einfach" die entsprechende Anweisung hinterlegen - z.B. xterm starten und als direkt auszuführendes Script des von Dir gewünschte angeben.

Konkrete Realiserung hängt ab von der verwendeten Terminal-Emulation, der verwendeten Desktop-Umgebung und evtl. noch ein paar Sachen mehr...
 
Pitti 1 schrieb:
Was muss ich aber tun, damit sich das gleiche Skript von der graphischen Oberfläche aus startet?
Das Skript wird ausgeführt (das kannst du leicht überprüfen, wenn Du am Schluß
Code:
kdialog --msgbox "Ich bin fertig."
einfügst), es ist aber keine Interaktion mit dem Benutzer möglich, die Antwort auf Dein read ist quasi das Drücken der Eingabe-Taste ohne vorherige Eingabe.

Eine mögliche Lösung ist ein zweites Skript, das mit der Zeile
Code:
konsole --noclose -e /pfad/skriptname
das erste Skript aufruft.
 
josef-wien schrieb:
Eine mögliche Lösung ist ein zweites Skript, das mit der ZeileCode: Alles auswählenkonsole --noclose -e /pfad/skriptnamedas erste Skript aufruft.
Habe ich gerade durchgeführt - Danke!
Den Skript habe ich folgende Zeile vorangestellt (vollständiger Pfad):
Code:
konsole --noclose -e /home/kobold/Datensicherung/Test
Allerdings ergibt sich daraus folgendes Problem:
Nun wird eine Schleife abgearbeit und es öffnen sich eine unendliche Anzahl von Terminalfenster.
Erst nach einem Klick auf "Fenster schließen" wird der Vorgang beendet
und der gewünschte Bildschirmausdruck erscheint:

Wo und wie muss nun die Schleife unterbrochen werden, damit
das Skript an der entsprechenden Stelle (1, 2 oder 3) ausgeführt werden kann?
 
josef-wien schrieb:
Schreibe ich so undeutlich?
Upps, wieder mal oberflächlich gelesen... :eek:ps:

Ich habe gerade das 2. Skript ("Start_Test") erstellt - funktioniert einwandfrei!
@ josef-wien + marce: Vielen Dank euch beiden!
 
Oben