Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

[gel. ]Erkennen vom wem ein Terminalsitzung gestartet wurde?

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
Benutzeravatar
nbkr
Guru
Guru
Beiträge: 2857
Registriert: 10. Jul 2004, 15:47

[gel. ]Erkennen vom wem ein Terminalsitzung gestartet wurde?

Beitrag von nbkr »

Hallo,

ich habe ein etwas seltsames Problem. Folgendes Beispiel: Ich will irgendeine Quelltextdatei (PHP Script, o.ä.) editieren. Dazu öffnene ich eine xterm Sitzung und editiere die Datei mit VIM.

Während dem editieren stelle ich fest, dass ich noch einen Unterordner im aktuelle Verzeichniss benötige. Gleichzeitig will ich aber nicht die Datei schließen. Das ist mit VIM erstmal kein Problem: Ich tippe einfach ":sh" ein VIM liefert mit einen Shell. (Es sieht also so aus als ob ich VIM verlassen hätte, kann aber mit "exit" wieder zurück in den VIM)

Jetzt gibts nur ein Problem. Nach längeren "Aufenthalt" in der von VIM gestarteten Shell vergesse ich ab und zu, dass VIM die Shell geöffnet hat. Ich editiere also die nächste Datei wieder mit "vim dateiname", verlasse wieder vim und so weiter und sofort. Am Ende verliere ich den Überblick ob ich jetzt noch VIM laufen habe oder nicht.

Das Gegenteil kommt auch vor. Ich denke, ich habe noch VIM geöffnet, tipppe "exit" und das xterm Fenster geht zu.

Deshalb die Frage: Gibt es irgendeinen Befehl der mir sagt, wer die Shell geöffnet hat (war es xterm selbst, oder doch vim)?

Danke für jede Hilfe!
Zuletzt geändert von nbkr am 3. Feb 2005, 10:25, insgesamt 1-mal geändert.
Kann gar nicht sein, ich bin gefürchtet Wald aus, Wald ein.
reini123

Re: Erkennen vom wem ein Terminalsitzung gestartet wurde?

Beitrag von reini123 »

Hi,
wenn ich mich nicht irre, setzt vim eine Var VIMRUNTIME !?
Wenn also echo $VIMRUNTIME nix bringt bist in keiner vim-shell.
Oder mach ` ps -H;echo $$" <- das bist Du"` dann siehst eh ob du unter einer vim sitzung stehst !

Hoffe das hilft Dir ;-)
Naja vielleicht weis ja jemand was besseres #fg#
Im Moment faellt mir nicht Vernuenftigeres ein :(

Mƒg ®êïñï
Benutzeravatar
Geier0815
Administrator
Administrator
Beiträge: 4377
Registriert: 14. Jun 2004, 09:12

Beitrag von Geier0815 »

Moin nbkr,

eine ganz billige Lösung: 'ps ax | grep vim' damit siehst Du ob und wie häufig vim gestartet ist.
Wenn Windows die Lösung ist...
kann ich dann bitte das Problem zurück haben?
reini123

Beitrag von reini123 »

æhm sry ;-)
dachte ihn interressiert nicht vim sondern die shells die er aus vims herraus gestartet hatt #fg#, dann hab ich ihn wohl falsch verstanden ;-)

Mƒg ®êïñï
Benutzeravatar
Geier0815
Administrator
Administrator
Beiträge: 4377
Registriert: 14. Jun 2004, 09:12

Beitrag von Geier0815 »

reini123 hat geschrieben:æhm sry ;-)
dachte ihn interressiert nicht vim sondern die shells die er aus vims herraus gestartet hatt #fg#, dann hab ich ihn wohl falsch verstanden ;-)

Mƒg ®êïñï
Ich weiß ja auch nicht ob meine Lösung ihm in seinem Sinne hilft, wäre aber ein Weg den ich beschreiten würde, wenn ich nicht eingefleischter emacs Fan wäre :wink: Und ich schrieb ja auch: billige Lösung! Deine ist natürlich viel schöner!! :lol:
Wenn Windows die Lösung ist...
kann ich dann bitte das Problem zurück haben?
Benutzeravatar
nbkr
Guru
Guru
Beiträge: 2857
Registriert: 10. Jul 2004, 15:47

Beitrag von nbkr »

Hallo,

danke euch beiden für die Vorschläge. Funktionieren beide prima, wobei ich aber zugeben muss, dass die Lösung von reini123 schicker ist. Zumal man dabei auch sehen kann wie oft man vi / sh verschachtelt hat :)
Kann gar nicht sein, ich bin gefürchtet Wald aus, Wald ein.
Antworten