kale_1990 Geschrieben 20. November 2006 Geschrieben 20. November 2006 hallo kann ich den befehl "exit" das die konsole geschlossen wird auch in einem shellscript benutzen? ich habs einfach mal probiert und ein script mit nur echo geschrieben aber da passiert leider nichts... :-( wie funktioniert das, das muss doch irgendwie funktionieren? Zitieren
Schlaubi Geschrieben 20. November 2006 Geschrieben 20. November 2006 *g* probiers mal mit... exit exit Zitieren
robotto7831a Geschrieben 20. November 2006 Geschrieben 20. November 2006 Hallo, mit exit wird das Shellskript geschlossen. Wenn die Konsole geschlossen werden soll dann sollte es mit logout funktionieren. Frank Zitieren
carstenj Geschrieben 20. November 2006 Geschrieben 20. November 2006 Hi, Hallo, mit exit wird das Shellskript geschlossen. Wenn die Konsole geschlossen werden soll dann sollte es mit logout funktionieren. Frank es wird eine Shell aufgerufen, wenn ein Skript gestartet wird und diese wird in der Tat geschlossen. Aber das wirkt sich nicht auf die Shell aus, von der das Skript aufgerufen wurden, und daher hat exit keinerlei Einfluss. Damit das nicht passiert, kann exec benutzt werden: exec ./skript.sh Das hat zur Folge, dass keine neue Shell aufgerufen wird, sondern die alte quasi ersetz wird. Dann hat auch "exit" darauf Auswirkung. Zitieren
kale_1990 Geschrieben 20. November 2006 Autor Geschrieben 20. November 2006 ja also ich hab einfach eine datei names "tschüss" in "/usr/bin" angelegt das wenn ich jetz egal wo in der konsole einfach nur "tschüss" eingebe die konsole gschlossen wird....wie kann ich das verwirklichen? Zitieren
carstenj Geschrieben 20. November 2006 Geschrieben 20. November 2006 Hi, weiss zwar gar nicht, wozu das gut sein soll, aber so ohne Weiteres wirds nicht gehen. Mein Spieltrieb hat mich dann aber doch zu diesem Werk geführt: #!/bin/sh SHELL=`ps -t "\`tty\`" -o pid` SHELL=`echo $SHELL | cut -d ' ' -f2` echo "Und tschuess..." sleep 2 kill -9 $SHELL Das ist zwar ziemlich dirty, aber nun gut. Es soll auch sinnlose Dinge geben. Zitieren
Wurstwasser Geschrieben 21. November 2006 Geschrieben 21. November 2006 shell skript? tut es nicht auch set tschüss=/usr/bin/exit oder wo auch immer exit liegt Zitieren
kale_1990 Geschrieben 21. November 2006 Autor Geschrieben 21. November 2006 danke mal für das script. kannst du die zeilen noch erklären? wie funktioniert das mit dem set... einfach in der konsole eingeben oder? Zitieren
carstenj Geschrieben 21. November 2006 Geschrieben 21. November 2006 shell skript? tut es nicht auch set tschüss=/usr/bin/exit oder wo auch immer exit liegt Ne, weil exit ein builtin-Kommando der Shell ist. Bekommt man ganz einfach mit man exit heraus. Der Schlüssel zu dem Ganzen ist, dass du herausfinden musst, auf welcher Konsole du dich befindest. Das bekommst du mit "tty" heraus. Anschließend musst du die PID der Shell bestimmten und diese letzten Endes killen. Wie gesagt, unsauber, aber funktioniert erstmal. Zitieren
kale_1990 Geschrieben 21. November 2006 Autor Geschrieben 21. November 2006 ok danke werde es nach feierabend ausprobieren? Zitieren
Schlaubi Geschrieben 22. November 2006 Geschrieben 22. November 2006 Warum man zu faul ist exit einzugeben kann ich ja verstehen, wenn einem die Zeichen zu viel zu schreiben sind, ich habe deshalb einen Alias e erstellt der einen exit bewirkt; Warum man aber statt 'exit' (4 Buchstaben) 'tschüss' (6 Buchstaben und ein oftmals in der Shell unangenehmes Umlaut) benutzen will ist mir auch nicht ganz klar, aber bitte Also versuchs mal so - das sollte der einfachste Weg sein: echo "alias tschüss=\"exit\"" >> ~/.alias && . ~/.alias Erklärung: Dieser Befehlt bewirkt, dass in der .alias Datei Deines Users am Ende ein Alias tschüss hinzugefügt wird und dieser bootfest nutzbar ist. Mit . ~/.alias stellst Du diesen Alias Deiner aktuellen Shell zur Verfügung. Nun sollte sich Dein Terminal mit dem Befehl tschüss beenden lassen. Zitieren
Amstelchen Geschrieben 22. November 2006 Geschrieben 22. November 2006 Warum man zu faul ist exit einzugeben kann ich ja verstehen, wenn einem die Zeichen zu viel zu schreiben sind, ich habe deshalb einen Alias e erstellt der einen exit bewirkt; Warum man aber statt 'exit' (4 Buchstaben) 'tschüss' (6 Buchstaben und ein oftmals in der Shell unangenehmes Umlaut) benutzen will ist mir auch nicht ganz klar, aber bitte ich bin mir nicht ganz sicher, aber ^D würde es ja auch tun, nicht? das hat nicht 6 buchstaben, nicht 4, nein, nur einen - bzw- ist sowieso ein steuerzeichen s'Amsteö Zitieren
Schlaubi Geschrieben 22. November 2006 Geschrieben 22. November 2006 oooh ooooh...na immerhin sind das zwei Tastendrucke (STRG+D), ne quatsch hast natürlich recht...aber ich als Grobmotoriker hab es auch schonmal hingebracht STRG+D zu drücken und das zu überhastet bzw. zu oft (2x) und dann war gleich das zweite Terminalfenster auch geschlossen *gg Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.