Hallo,
folgendes Problemchen:
Ich habe einen User welcher nur für eine spezielle Überwachung eingerichtet wurde. So habe ich in der .bashrc am Ende einen Skript aufruf und danach das Kommando logout eingegeben. Aber leider logt der einfach nicht aus. Das aufgerufene Skript enthält eine "while true ; do ---> done" Schleife die ich nur mit Strg-C unterbrechen kann, worin auch das Problem wahrscheinlich liegt.
Bin in Skriptprogrammierung absoluter Neuling. Wie kann ich die Schleife mit einem Bestimmten Tastendruck beenden?
Oder Liegt das Problem woanders?
Vielen Dank,
mfG
Alexander
Logout nach Login
Re: Logout nach Login
Hallo,
ich verwende zwar rexx für ne bash-programmierung aber das Problem läßt sich mit
Sicherheit einfach dadurch lösen, dass man 1. den Script im Hintergrund laufen läßt,
und 2. die do-schleife durch z. b das vorhandensein oder nichtvorhandensein einer
Datei beendet.
Logischer Ablauf
do bis datei da
. hier wird was gemacht
.
done.
datei wieder löschen
logoff
So was hab ich mal in assembler für ne Z/os 390 (IBM Eisen) programmiert. Hier wartet
auch ein Job darauf, dass eine Datei per FTP angekommen ist, um dann die Verarbeitung
fortzusetzen. Sollte sich auch für dein Problem nutzen lassen.
Viel Glück
ich verwende zwar rexx für ne bash-programmierung aber das Problem läßt sich mit
Sicherheit einfach dadurch lösen, dass man 1. den Script im Hintergrund laufen läßt,
und 2. die do-schleife durch z. b das vorhandensein oder nichtvorhandensein einer
Datei beendet.
Logischer Ablauf
do bis datei da
. hier wird was gemacht
.
done.
datei wieder löschen
logoff
So was hab ich mal in assembler für ne Z/os 390 (IBM Eisen) programmiert. Hier wartet
auch ein Job darauf, dass eine Datei per FTP angekommen ist, um dann die Verarbeitung
fortzusetzen. Sollte sich auch für dein Problem nutzen lassen.
Viel Glück
Re: Logout nach Login
Hmm.... ich glaub ich such was anderes. Aber ich versuchs nochmal:
Ich benötige eine Endlosschleife welche ein (oder mehrere) Kommando(s) ausführt und sich dann mittels Tastendruck beenden lässt.
Also vom ATARI kenne ich sowas noch als:
DO
PRINT "Huhuhu...."
UNTIL INPUT="E"
oder
REPEAT
PRINT "Huhuhu....."
UNTIL INPUT="E"
So würde die Schleife mit der Taste "E" beendet und das Skript weiter fortgesetzt werden ohne mit Strg+C das Skript zu unterbrechen.
Eigentlich ganz einfach aber ich habe keinen blassen Schimmer von derartigen Befehlen für die Shell.
Kennt jemand gute Sites oder Bücher zu diesen Fragen?
Vielen Dank,
Grüssle,
Alex
Ich benötige eine Endlosschleife welche ein (oder mehrere) Kommando(s) ausführt und sich dann mittels Tastendruck beenden lässt.
Also vom ATARI kenne ich sowas noch als:
DO
PRINT "Huhuhu...."
UNTIL INPUT="E"
oder
REPEAT
PRINT "Huhuhu....."
UNTIL INPUT="E"
So würde die Schleife mit der Taste "E" beendet und das Skript weiter fortgesetzt werden ohne mit Strg+C das Skript zu unterbrechen.
Eigentlich ganz einfach aber ich habe keinen blassen Schimmer von derartigen Befehlen für die Shell.
Kennt jemand gute Sites oder Bücher zu diesen Fragen?
Vielen Dank,
Grüssle,
Alex
Re: Logout nach Login
- die Zeile mit while do ...done um ein & (kaufmaennisches UND) ergaenzen, damit der Prozess in den Hintergrund geschickt wird.
Danach folgende Zeilen werden nun abgearbeitet. Der Prozess, der nun im Hintergrund ist, kann nicht mit fg hervorgeholt werden und muss mit ps ermittelt und kill beendet werden.
- ob logout funktioniert, bezweifle ich, aber ich habe mit .bash_login scripten schon unerwuenschte logouts gehabt, indem ich das Script mit exit beenden wollte.
ratte
Danach folgende Zeilen werden nun abgearbeitet. Der Prozess, der nun im Hintergrund ist, kann nicht mit fg hervorgeholt werden und muss mit ps ermittelt und kill beendet werden.
- ob logout funktioniert, bezweifle ich, aber ich habe mit .bash_login scripten schon unerwuenschte logouts gehabt, indem ich das Script mit exit beenden wollte.
ratte
Re: Logout nach Login
wie waere es einfach das gewuenschte Programm als default shell dem User zuzuweisen !?
waere einen Versuch wert, oder !?
hier "/etc/passwd", habs selbst noch nicht versucht ist nur so eine Idee.
waere einen Versuch wert, oder !?
hier "/etc/passwd", habs selbst noch nicht versucht ist nur so eine Idee.