ls / > ~/Bla/Info.txt |
Außerdem werden folgende Bild-Dateien erzeugt durch |
convert -size 48x48 xc:red \( -size 40x40 xc:yellow \( -size 30x30 -background green -gravity center -fill black -font FreeSerif -pointsize 36 label:A \) -gravity center -composite \) -gravity center -composite ~/Bla/C8.png |
convert -size 48x48 xc:red \( -size 40x40 xc:yellow \( -size 30x30 -background green -gravity center -fill black -font FreeSerif -pointsize 36 label:B \) -gravity center -composite \) -gravity center -composite ~/Bla/C7.png |
convert -size 48x48 xc:red \( -size 40x40 xc:yellow \( -size 30x30 -background green -gravity center -fill black -font FreeSerif -pointsize 36 label:S \) -gravity center -composite \) -gravity center -composite ~/Bla/C6.png |
convert -size 200x200 xc:white -stroke tomato -fill yellow -strokewidth 2 -draw 'circle 94,106 28,106' +stroke -fill black -draw 'circle 69,105 60,105' -draw 'circle 119,105 128,105' -draw 'fill none stroke-linecap round stroke-width 3 stroke black ellipse 94,20 60,60 60,120' -rotate 180 -stroke black -strokewidth 6 -draw 'line 96,93 58,62' -draw 'line 96,93 63,57' -draw 'line 115,93 155,62' -draw 'line 115,93 151,57' ~/Bla/emo.png |
Mit dem Programm xmessage kann man auf dem Bildschirm Fenster erzeugen |
xmessage "Hoffentlich gibt es am Wochenende keinen Regen!" |
Das Fenster schließt man durch Klicken auf "okay" oder "X", erst dann wird das Terminal wieder frei für Neues. Das Besondere ist dabei die Möglichkeit von Buttons auf die man klicken kann |
xmessage -buttons "Gerne,Vielleicht,Bin verhindert" "Kommst DU am Wochenende mit zum Picnic?" |
Nun kann man auf die Schaltflächen klicken aber es passiert noch nichts, außer daß sich das Fenster schließt. Natürlich muß man festlegen was denn beim Klicken passieren soll. Es werden den Schaltflächen intern Zahlen zugeordnet (sogenannte Rückgabewerte). Die erste Schaltfläche von links erhält die Zahl 101 die folgende Schaltfläche erhält die Zahl 102 und so weiter. Man kann diese Rückgabewerte abfragen durch: |
xmessage -buttons "Gerne,Vielleicht,Bin verhindert" "Kommst DU am Wochenende mit zum Picnic?"; echo $? |
Nachdem einer der Buttons gedrückt wurde sieht man im Terminal den Rückgabewert. Das was passieren soll schreibt man in ein script, das hier in dem Ordner ~/Bla abgelegt werden soll: |
nano ~/Bla/scA.sh |
Eingabe in den Editor: |
#!/bin/bash xmessage -buttons "Gerne,Vielleicht,Bin verhindert" "Kommst DU am Wochenende mit zum Picnic?" RESULT=$? if [ $RESULT -eq 101 ]; then xmessage "TOLL" elif [ $RESULT -eq 102 ]; then xmessage "BITTE KOMM DOCH" else xmessage "SCHADE" fi |
Im Script wird zunächst
eine Variable RESULT erzeugt, die den Rückgabewert der Schaltfächen
übernimmt. Dann geht es weiter in der Form Wenn [Rückgabewert=101] also 1. Schaltfläche von links gedrückt wurde, dann "TOLL" Wenn [Rückgabewert=102] also 2. Schaltfläche von links gedrückt wurde, dann "BITTE KOMM DOCH" Ansonsten (als Möglichkeit bleibt nur noch das Drücken der 3. Schaltfläche von links) "SCHADE" Nun muß man diese Datei ausführbar machen: |
chmod +x ~/Bla/scA.sh |
Der Aufruf des Scriptes erfolgt mit: |
~/Bla/scA.sh |
Klickt man jetzt auf die Schaltfläche "Bin verhindert" so erscheint das Fenster |
Dies kann man schon als ein
klitzekleines Programm auffassen. Nun möchte man daß das Programm nicht
über das Terminal gestartet wird sondern durch Klicken auf die
Script-Datei. Dazu kann man auf die Script-Datei einen Rechtsklick machen und auswählen Als Anwendung ausführen oder Ausführen Das Aussehen einer Script-Datei kann man leicht ändern. Im konkreten Fall macht man auf das Symbol der Datei scA.sh einen Rechtsklick und wählt Eigenschaften: |
Man schreibt in das Namen-Feld
den neuen Namen, hier Picnic. Das Icon
jeder Datei kann man ändern indem man bei dem Eigenschaften-Menü
auf das Icon klickt und ein anderes Bild auswählt. Also klickt man auf
das alte Icon und wählt die Datei C8.png aus dem Ordner Bla, dann
schließt man das Eigenschaften-Menü. Nun kann man mit einem Rechtsklick auf ![]() Man kann einen eigenen Ordner erstellen in dem Programmstarter gesammelt werden, vielleicht mit dem Namen Cockpit oder Startrampe oder Favoriten oder... xmessage kann man durch zusätzliche Angaben optisch aufwerten und man kann natürlich auch andere Aktionen mit den Buttons auslösen. -title "eigener Text" Änderung der Fenster-Überschrift -fn '-*-*-*-r-*--25-0-0-0-p-*-iso8859-1' größere Schrift (Skalierungsfaktor ist hier 25, andere Werte sind möglich) -center zentrierte Ausrichtung des Fensters -file Anzeige des Inhaltes einer Text-Datei, die dann nachfolgend benannt werden muß Also neues Beispiel |
nano ~/Bla/scB.sh |
Eingabe in den Editor: |
#!/bin/bash xmessage -fn '-*-*-*-r-*--25-0-0-0-p-*-iso8859-1' -title "Datei-Anfrage" -center -buttons "JA sofort,Kenne ich nicht" "Kannst DU mir die Dateien aus dem /-Verzeichnis zeigen?" RESULT=$? if [ $RESULT -eq 101 ]; then xmessage -title "/-Dateien" -file ~/Bla/Info.txt else display ~/Bla/emo.png fi |
Nun muß man diese Datei ausführbar machen: |
chmod +x ~/Bla/scB.sh |
Mit Rechtsklick auf die
Datei wählt man wieder Eigenschaften. Dann vergibt man einen Namen, hier etwa Rechner Für das Icon wählt man die Datei C7.png aus dem Ordner Bla, dann schließt man das Eigenschaften-Menü. Rechtsklick auf ![]() |
Es gibt ein anderes Programm
mit Namen zenity das sehr professionelle Fenster erzeugt. So ist das
entsprechende Fenster von xmessage -title "/-Dateien" -file ~/Bla/Info.txt in dem Programm zenity |
zenity --text-info --title="Suchergebnisse" --filename="/home/$USER/Bla/Info.txt" |
Das Fenster von zenity sieht
super aus aber man muß den vollen Pfad angeben, ~/ funktioniert hier
nicht ($USER ist eine Variable die Ihren username einsetzt).
Eine andere Fenster-Version ist eine Text-Eingabebox, zenity --entry . Um den Rückgabewert zu sehen kann man verwenden |
szEingabe=$(zenity --entry --text "Bitte einen Text eingeben" --entry-text "hier schreiben" ; echo $szEingabe |
Tipp man jetzt in dem Programmfenster an der Stelle von hier schreiben den Text ein mal sehen so zeigt sich nach Klicken auf OK im Terminal dieser Text (mal sehen) als Rückgabewert. Eine weitere Fenster-Version ist eine Ordner-Auswahlbox, zenity --file-selection --directory Um den Rückgabewert zu sehen kann man verwenden |
szPath=$(zenity --file-selection --directory --title "Bitte Ordner auswählen" ); echo $szPath |
Markiert man jetzt in dem Programmfenster einen Ordner (man kann wie üblich Unterordner öffnen)
so zeigt sich nach Klicken auf OK im Terminal der Pfad zum zuvor markierten Ordner als Rückgabewert. Wenn man sich jetzt an die Suchfunktionen auf den Seiten Debian Gnome Ordner Terminal Debian Gnome Nano erinnert und die dort vorgestellten Scripte nachgebaut hat, so kann man diese Suchfunktion jetzt ganz professionell gestalten. Also neues Beispiel |
nano ~/Bla/scS.sh |
Eingabe in den Editor: |
#!/bin/bash szPath=$(zenity --file-selection --directory --title "In welchem Ordner soll gesucht werden" ) szSuch=$(zenity --entry --text "Suchwort eingeben" --entry-text "Suchwort" ) xmessage -fn '-*-*-*-r-*--20-0-0-0-p-*-iso8859-1' -title "Datei-Suche" -center -buttons "Excel txt,Libre Office,Word" "Welche Datei-Art soll durchsucht werden?" RESULT=$? if [ $RESULT -eq 101 ]; then grep -ri -e "$szSuch" "$szPath" 2>&1 | sed 's/^grep: //' > ~/Bla/TMP.sh zenity --text-info --filename="/home/$USER/Bla/TMP.sh" --title="Suchergebnisse" rm -v -f ~/Bla/TMP.sh elif [ $RESULT -eq 102 ]; then ~/.searchodt "$szPath" "$szSuch" > ~/Bla/TMP.sh zenity --text-info --filename="/home/$USER/Bla/TMP.sh" --title="Suchergebnisse" rm -v -f ~/Bla/TMP.sh else ~/.searchdoc "$szPath" "$szSuch" > ~/Bla/TMP.sh zenity --text-info --filename="/home/$USER/Bla/TMP.sh" --title="Suchergebnisse" rm -v -f ~/Bla/TMP.sh fi |
Nun muß man diese Datei ausführbar machen: |
chmod +x ~/Bla/scS.sh |
Mit Rechtsklick auf die
Datei wählt man wieder Eigenschaften. Dann vergibt man einen Namen, hier etwa Suche Für das Icon wählt man die Datei C6.png aus dem Ordner Bla, dann schließt man das Eigenschaften-Menü. Nach Rechtsklick auf ![]() öffnet sich ein Fenster in dem man einen Ordner bestimmen kann in dem anschließend gesucht wird. Nach Klicken auf OK öffnet sich ein neues Fenster in dem man einen Suchbegriff eingeben kann. Dies können auch Satzteile sein die Leerzeichen enthalten. Bei 'Libre Office'-Dateien und bei Word-Dateien können die Worte auch Umlaute enthalten. Bei 'Excel txt'-Dateien sollten keine Umlaute enthalten sein |
Nach Klicken auf OK öffnet sich ein Fenster in dem die Datei-Art bestimmt werden kann. |
Nachdem ein Button gedrückt wurde beginnt die Suche und die Ergebnisse werden danach angezeigt. |