Choice Alternative für Linux Bash

Mitglied: einwegglas

einwegglas (Level 1) - Jetzt verbinden

16.08.2007, aktualisiert 27.08.2007, 6107 Aufrufe, 10 Kommentare

Hallo Linux-Experten und die, die es werden wollen,

ich habe da ein Problem, an dem ich mir schon seit Stunden die Zähne ausbeiße. Google, bisher imer sehr nützlich, hat diesmal keinen Erfolg gebracht.

Nun mein Problem.

Ich suche eine Alternative zum Windows Choice-Befehl für Bash. Was will ich damit?

Ein Benutzer soll zwischen 3 Alternativen auswählen. Erfolgt keine Eingabe in einer bestimmten Zeit, dann soll der Rechner neugestartet werden. Der Aufbau in etwa wie "choice /c /t"

Ich hoffe ihr könnt mir helfen.

Gruß EWG
Mitglied: spacyfreak
17.08.2007 um 11:41 Uhr
Wie wäre es mit dem "case" Befehl?
Bitte warten ..
Mitglied: einwegglas
20.08.2007 um 11:11 Uhr
Die Fallunterscheidung mit Case verwende ich schon. Mir geht es eher um den Parameter Zeit. Gibt es denn überhaupt eine Möglichkeit nach Ablauf eines bestimmten Zeitintervalls automatisch einen Wert zu setzen?

hier mal mein Skript:

echo -n "(R)ohimage wiederherstellen, Finalimage (a)lle Partitionen wiederherstellen, Finalimage nur (S)ystempartion wiederherstellen oder (N)eustart: "

"Jetzt soll nach 30 Sekunden der Rechner neugestartet werden, wenn innerhalb dieser Zeit keine Eingabe erfolgt."


while read Option
do
case $Option in
r|R)
img rp _.zmg
break
;;
a|A)
img rp _.zmg
break
;;
s|S)
img pd1
img pc1 ntfs
img pa1
img rp _.zmg a1:p1
break
;;
n|N)
echo "Der Computer wird neu gestartet"
break
;;
*)
echo "Fehlerhafte Eingabe! Nur r,R,a,A,s,S,n,N"
;;
esac
done

zisedit -r
reboot

Danke für schnelle Antzworten

Gruß EWG
Bitte warten ..
Mitglied: Chephren
22.08.2007 um 14:08 Uhr
Ich würde etwa so vorgehen:

Datei erzeugen, die z.B. ein init 6 ausführt.
(Ausführrechte nicht vergessen )
Dann skriptgesteuert mittels at (Anleitung hier) ausführen lassen.
Bitte warten ..
Mitglied: einwegglas
23.08.2007 um 11:55 Uhr
Vielen Dank für den Hinweis, werde ich mal ausprobieren.

Das Script ist eigentlich für Novell Zenworks, d.h. auf dem Client wird nur in eine abgespeckte Linux-Console gebootet. Ob ich da den at-Befehl nutzen kann, weiß ich nicht.

Deshalb dachte ich ja, dass man das irgendwie mit dem echo-Befehl machen kann.

Gruß EWG
Bitte warten ..
Mitglied: Chephren
23.08.2007 um 15:20 Uhr
Moin,

nach meinen Informationen ist at in ZenWorks vorhanden und verfügbar. Ob Du es nutzen kannst, musst Du natürlich testen....

Ansonsten müsste auch ein sleep n weiterhelfen.

Gruß

Volker
Bitte warten ..
Mitglied: einwegglas
24.08.2007 um 10:07 Uhr
An sleep habe ich auch gedacht. Jedoch ist es mir noch nicht gelungen einen Parameter zu übergeben.

Wie müsste denn das Skript aussehen, wenn ich mit echo -n eine Benutzereingabe anfordere, die standardmäßig mit n für Neustart beantwortet wird, wenn das Zeitintervall abgelaufen ist?

... und sleep nach echo -n auszuführen, funktioniert eh nicht, da das Skript ja vorher auf eine Benutereingabe wartet.

Ein kleines Beispielskript würde mir sicher weiterhelfen

Danke

Gruß EWG

@Volker: den at -Befehl gibt es leider bei Zenworks nicht
Bitte warten ..
Mitglied: einwegglas
24.08.2007 um 10:39 Uhr
Hab mal folgenden Code gefunden, den mir mal einmal erklären müsste:

vollständig:
Erklärungsbedarf:
In der Zenworks-Bash unterstützt "read" keine der o.g Schalter. Daher kann ich den Code nicht testen.

Gruß EWG
Bitte warten ..
Mitglied: Chephren
24.08.2007 um 22:52 Uhr
Hi,

mehr zum read-Befehl findest Du unter READ

Vielleicht kennt Zen den ja, eventuell mit der Option -t oder so....
Bitte warten ..
Mitglied: einwegglas
26.08.2007 um 17:28 Uhr
danke für den Tipp. Werde ich morgen mal testen.
Bitte warten ..
Mitglied: einwegglas
27.08.2007 um 17:43 Uhr
leider kennt der read befehl nur den schalter -r, von dem ich nicht weiß, was er macht. damit funktioniert auch dieser befehl nicht.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Linux Bash case Abfrage funktioniert nicht

gelöst Frage von BadFsaadKlBatch & Shell4 Kommentare

Hallo zusammen, ich bin gerade dabei ein kleines Linux Script zu schreiben welches per User Input Werte einlesen soll. ...

Batch & Shell

BASH-Skript in Linux - Mailversand funktioniert nicht

gelöst Frage von DanielG1974Batch & Shell12 Kommentare

Hallo. Gleich vorweg: Ich habe keine Ahnung von BASH- oder BATCH-Skripten. Ich such mir hier und da was zusammen ...

Linux Tools

Dynamisches Menü mit Dialog für Linux Bash

gelöst Frage von OIOOIOOIOIIOOOIIOIIOIOOOLinux Tools4 Kommentare

Guten Tag, in einem Unix Forum habe ich eini interessante Lösung für dynamisches Menü gefunden: Dynamic Bash Dialog from ...

Linux Tools

Mailversand mit der Linux-Bash und mailx

gelöst Frage von WinLiCLILinux Tools6 Kommentare

Hallo zusammen, ich habe ein Bashskript dass einige Logs parsen soll und mir danach eine Mail mit den gefundenen ...

Batch & Shell

Bash sqlplus oder Bash Fehler?

Frage von MarabuntaBatch & Shell7 Kommentare

Hallo, da ich sehr eingeschränkt in Bash bin, brauche ich hier etwas Hilfe. Was stimmt mit dem EOF nicht? ...

Batch & Shell

Bash Mail senden

gelöst Frage von MarabuntaBatch & Shell7 Kommentare

Hallo, ich versuche eine einfache Mail mittels Bash zu verschicken. Die mailbody.txt ist leer. Auch mit sinnvollen Parametern kann ...

Heiß diskutierte Inhalte
Notebook & Zubehör
Macbook oder Surface Book 3?
gelöst Frage von FamousDex089Notebook & Zubehör36 Kommentare

Hallo Zusammen :-), ich bin komplett neu in der IT Admin schiene und neu in diesem Forum. Ich habe ...

Outlook & Mail
Outlook App auf Android
gelöst Frage von PeterGygerOutlook & Mail21 Kommentare

Hallo Folgende Situation: Samsung S3 Samsung S5 Mini Die Microsoft Outlook App kann nicht mehr gestartet werden. Es waren ...

SAN, NAS, DAS
Probleme mit der GIGABIT Leitung - Finden der Krücke - Wer ist schuld ?
gelöst Frage von daswinimramSAN, NAS, DAS16 Kommentare

Hallo Community , folgender Aufbau : "erfolgreich" umgestellt auf Gigabit Tarif am 26.09.20 Speedtests wurden von allen PCs hinter ...

Windows Netzwerk
Firmennetzwerk mit 3 PC
gelöst Frage von greenhorn1Windows Netzwerk14 Kommentare

Hallo, ich bin neu in diesem Forum und hoffe, dass die Experten in diesem Forum auch mir mit meinen ...

Humor (lol)
So eine Art Jobangebot
Frage von Melvin.van.HorneHumor (lol)14 Kommentare

Moin, ich habe eben eine Zeit damit zugebracht eine GPO für eine Gruppe von Clients zu erstellen. Egal was ...

PHP
Direkter Zugriff auf Ergebnisseite des php-Formulars möglich?
gelöst Frage von EsekylPHP13 Kommentare

Hallo Freunde, ich würde gern die Abfuhrtermine unseres hiesigen Anbieters automatisiert abrufen. Es gibt auf deren Homepage ein Formular, ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT