Eterm sendet Ping nicht

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
mosa
Beiträge: 324
Registriert: 29.10.2004 09:53:35

Eterm sendet Ping nicht

Beitrag von mosa » 19.10.2007 10:47:27

Hi, Eterm funktioniert so weit so gut, nur möchte ich das er beim starten, prüft ob die Webseite xxx ereichhbar ist :o Tippe ich es auf der Konsole geht alles wie gewünscht. Bei Eterm hingegen, vermute ich mal, geht er am Schluss der Operation, in seine Ausgangssituation zurück. Dabei wollte ich mir doch so gerne die 3-Zeilen anschauen :evil:
Hier meine Einstellung:

Code: Alles auswählen

kstart --window StarDELL-log --alldesktops --skiptaskbar --skippager --onbottom Eterm -Ox --shade 0 -g=163x44+192+200 --no-cursor -n StarDELL-log -T StarDELL-log --scrollbar off -f green --buttonbar 0

if (ping "www.ccc.de" -c 3);then
 echo "PC is online"
 else
 echo "PC is offline"
fi 

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Beitrag von uwepr » 24.10.2007 14:36:55

Hallo mosa,
Wie Du Eterm dazu bringst, die Standard-Ausgabe einer bereits laufenden shell auszugeben, weiß ich nicht. Wenn Du Ping.sh aufrufst, werden die Meldungen selbstverständlich auf die Standardausgabe der shell ausgegeben, die Ping.sh gestartet hat und Eterm zeigt nichts an.
Für sh-Skripte sind die Programme
Xdialog
kdialog
zenity
geeignet.
Funktionieren würde (Paketname: xdialog):

Code: Alles auswählen

#!/bin/bash
if (ping "www.ccc.de" -c 3);then
Xdialog --infobox "PC ist online" 6 30 2000
 else
Xdialog --infobox "PC ist offline" 6 30 2000
fi
Viele Grüße! Uwe Pr.
squeeze/fluxbox

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Beitrag von uwepr » 25.10.2007 09:24:56

Hallo mosa,
nach dem Überschlafen sind mir zwei Wege eingefallen und mir ist auch klar, was Du willst:
Anmeldung>>>transparentes randloses Fenster ploppt auf und meldet "PC is online/offline", wenn möglich, automatisch nach paar Sekunden schließend.

zwei Lösungsmöglichkeiten schweben mir vor:

1.

Code: Alles auswählen

#!/bin/bash
if (ping "www.ccc.de" -c 3);then
kstart...[optionen] kdialog --msgbox [optionen]"PC is online" 
 else
kstart...[optionen] kdialog --msgbox [optionen]"PC is offline" 
fi
Ich kenne mich da aber mit den Optionen von kstart und kdialog nicht so aus, ob da ein transparentes randloses Fenster möglich ist. Die KDE-Konsole zumindest kann Hintergrundtransparenz.

2.kcontrol>>>KDE-Komponenten>>>Komponentenauswahl>>>Terminal-Emulator: hier könntest Du Deinen Eterm-Startbefehl zum KDE-Standard machen. Man müßte noch herauskriegen, welches Programm hinter K-Menu "Anwendung starten" mit der Option "in Terminal ausführen" steckt und könnte dann Ping.sh

Code: Alles auswählen

#!/bin/bash
if (ping "www.ccc.de" -c 3);then
 echo "PC is online"
 else
 echo "PC is offline"
fi
versuchen, auf diesem Weg zu starten. Es gibt aber eine Stolperfalle: Wenn Dein System/Benutzerkonto UTF-8 verwendet, gibt es bei Eterm Zeichensalat mit Umlauten, da Eterm kein Unicode kann. Alternative möglicherweise Paket rxvt-unicode/Programmname urxvt. urxvt kann Transparenz, nach "randlos" habe ich noch nicht gesucht.
Viele Grüße erstmal! Uwe Pr.
squeeze/fluxbox

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Beitrag von uwepr » 25.10.2007 15:38:00

Hallo mosa,
bei mir funktioniert folgendes :
unter
.ping.sh
habe ich folgendes script in meinem home gespeichert:

Code: Alles auswählen

#!/bin/bash
if (ping "www.ccc.de" -c 3);then
Xdialog --infobox "PC ist online" 6 30 2000
 else
Xdialog --infobox "PC ist offline" 6 30 2000
fi
welches gestartet wird durch das script:
.pingstart.sh

Code: Alles auswählen

#!/bin/bash
#startscript für ~/.ping.sh

Eterm -Ox --shade 0 -g=163x44+192+200 --no-cursor -n StarDELL-log -T StarDELL-log --scrollbar off -f green --buttonbar 0 -e ~/.ping.sh
Mit

~/.pingstart.sh

als Startbefehl kann ich das Ganze nun durchlaufen lassen. Damit ploppt Eterm auf, zeigt die Meldungen von ping, Xdialog zeigt kurz ein Benachrichtigungsfenster und das Ganze beendet sich. Vielleicht wäre für Dich kdialog die bessere Wahl. Selbst benutze ich aber meist fluxbox und da dauert der Start von kdialog etwas. Die Zeile
kdialog --msgbox "PC is online"
ist für Dich vielleicht besser geeignet, kdialog schließt sich aber nicht selbsttätig sondern muß per "ok" weggeklickt werden.
Viele Grüße! Uwe Pr.
squeeze/fluxbox

Benutzeravatar
uwepr
Beiträge: 657
Registriert: 03.02.2007 12:13:01
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Halle/S.
Kontaktdaten:

Beitrag von uwepr » 25.10.2007 17:09:37

Hallo mosa,
ich hab's :D :

für .ping.sh

Code: Alles auswählen

#!/bin/bash
if (ping "www.ccc.de" -c 3);then
echo "PC is online"
sleep 5
 else
echo "PC is offline"
sleep 5
fi
und mit .pingstart.sh wie im vorangegangenen posting starten.
Viel Spaß! Uwe Pr.
squeeze/fluxbox

Antworten