Hot News:

Unser Angebot:

  Foren auf CAD.de
  UNIX
  Kommandowiederholung in der ksh

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
Autor Thema:  Kommandowiederholung in der ksh (1559 mal gelesen)
talpa
Mitglied
Program Manager


Sehen Sie sich das Profil von talpa an!   Senden Sie eine Private Message an talpa  Schreiben Sie einen Gästebucheintrag für talpa

Beiträge: 360
Registriert: 19.08.2002

erstellt am: 24. Aug. 2004 13:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo allerseits!

Ich arbeite an meiner Sun Blade 1000 mit der Kornshell und möchte die Kommandowiederholung nutzen. Beim mir funktioniert aber weder der vi- noch der emacs-Modus:

Wenn ich Esc+k für ein Redo im vi-Modus drücken möchte, erscheinen schon nach dem Drücken der Esc-Taste und noch vor dem Drücken der k-Taste die folgenden Zeichen: ^[

Also dachte ich mir, ich versuche es mit der Befehlskombination des emacs-Modus Strp+p. Diesmal erscheinen nach dem Drücken beider Tasten die folgenden Zeichen: ^p

Was heißt das jetzt für mich? Kann mir jemand sagen, woran das liegt bzw. wie ich einen der beiden Modi einschalten kann? Ich bin für jeden Hinweis dankbar!

Gruß, Talpa

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KlausJ
Moderator



Sehen Sie sich das Profil von KlausJ an!   Senden Sie eine Private Message an KlausJ  Schreiben Sie einen Gästebucheintrag für KlausJ

Beiträge: 1336
Registriert: 17.03.2003

AIX 6.2
Windows XP

erstellt am: 24. Aug. 2004 14:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für talpa 10 Unities + Antwort hilfreich

Hallo Talpa,
ich vermute mal, daß die "SUN-Kornshell" dieselbe ist wie bei AIX.
Als erstes mußt Du der Kornshell mit dem Kommando set -o vi oder set -o emacs bekanntgeben, mit welchem Interpreter Du arbeiten möchtest - kann bei Funktionieren in die .env oder .dtprofile intergriert werden.
Dann müßtest Du eigentlich so arbeiten können, wie Du es Dir vorstellst.

------------------
in diesem Sinne

Klaus 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

talpa
Mitglied
Program Manager


Sehen Sie sich das Profil von talpa an!   Senden Sie eine Private Message an talpa  Schreiben Sie einen Gästebucheintrag für talpa

Beiträge: 360
Registriert: 19.08.2002

erstellt am: 24. Aug. 2004 15:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Klaus,

vielen Dank für Deine Hilfe! Es funktioniert genau so, wie Du es mir beschrieben hast. Bis auf einen Punkt:

Um mir die Eingabe in jedem neuen Terminal zu sparen, habe ich diesen Befehl (set -o vi) in die .dtprofile in meinem Homeverzeichnis hineingeschrieben. Leider scheint das nicht beim System angekommen zu sein. Nach einem neuen Login funktionierte der Modus erst wieder nach erneutem Absetzen des Befehls. Weißt Du woran das liegen kann?

Gruß, Talpa

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KlausJ
Moderator



Sehen Sie sich das Profil von KlausJ an!   Senden Sie eine Private Message an KlausJ  Schreiben Sie einen Gästebucheintrag für KlausJ

Beiträge: 1336
Registriert: 17.03.2003

AIX 6.2
Windows XP

erstellt am: 25. Aug. 2004 08:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für talpa 10 Unities + Antwort hilfreich

Hallo Talpa,
kannst Du bitte in einer Shell das Kommando echo $ENV absetzen. Gibt es eine Ausgabe z.B. .env oder .kshrc, dann muß dieses File in Deiner HOME-Directory existieren. Trage dort den Befehl set -o vi ein. Dieses File wird jedesmal beim Starten einer Shell ausgeführt - Sorry habe ich vergessen zu sagen.

------------------
in diesem Sinne

Klaus 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

talpa
Mitglied
Program Manager


Sehen Sie sich das Profil von talpa an!   Senden Sie eine Private Message an talpa  Schreiben Sie einen Gästebucheintrag für talpa

Beiträge: 360
Registriert: 19.08.2002

erstellt am: 25. Aug. 2004 09:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Klaus,

macht nix    und danke, dass Du auf meine PM so schnell reagiert hast! Wenn ich echo $ENV in einer Shell absetze, wird nur eine leere Zeile ausgegeben. Was bedeutet das?

Gruß, Talpa

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KlausJ
Moderator



Sehen Sie sich das Profil von KlausJ an!   Senden Sie eine Private Message an KlausJ  Schreiben Sie einen Gästebucheintrag für KlausJ

Beiträge: 1336
Registriert: 17.03.2003

AIX 6.2
Windows XP

erstellt am: 25. Aug. 2004 09:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für talpa 10 Unities + Antwort hilfreich

Hallo Talpa,
schreibe in $HOME/.dtprofile und $HOME/.profile die Zeile
export ENV=$HOME/.env
Jetzt mußt Du nur noch ein File $HOME/.env anlegen und die Zeile
set -o vi
dort reinschreiben. Das ENV-File ist auch sehr nützlich, wenn Du alias Befehle definieren willst. Das wird bei uns recht intensiv eingesetzt.

------------------
in diesem Sinne

Klaus 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

talpa
Mitglied
Program Manager


Sehen Sie sich das Profil von talpa an!   Senden Sie eine Private Message an talpa  Schreiben Sie einen Gästebucheintrag für talpa

Beiträge: 360
Registriert: 19.08.2002

erstellt am: 25. Aug. 2004 10:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Klaus,

es hat funktioniert, vielen Dank!!!

Ein paar Sachen sind mir aber immer noch suspekt:

Die Datei .env gab es bei mir im Homeverzeichnis noch nicht. In der der Datei .dtprofile war die Zeile export ENV=$HOME/.env allerdings schon vorhanden, scheint so eine Art von Vorbereitung zu sein oder wie soll ich das verstehen?

Ich habe die Datei .env dann erstellt und set -o vi eingetragen. Trotzdem hat es noch nicht funktioniert. Erst nachdem ich (so wie Du es mir auch aufgetragen hast) die Zeile export ENV=blabla auch in die .profile eingetragen habe, hat es funktioniert. Warum muss es denn in beiden Dateien stehen? Ich dachte die werden der Reihe nach durchlaufen und die letzte überschreibt nur die ersten?

In der .dtprofile habe ich folgendes gefunden:

###  DT pre-sets the following environment variables for each user.
###    ENV        set to "$HOME/.kshrc"

Die Datei .kshrc hast Du ja schon erwähnt. Sie existiert bei mir (noch) nicht. Ich könnte sie erstellen, dann müsste ich sie aber nochmal extra deklarieren (ungefähr so: export ENV=.kshrc), habe ich das richtig verstanden?

Außerdem steht in der .dtprofile noch folgendes:

###  Three methods are available to modify or add to this list depending
###  on the desired scope of the resulting environment variable.
###
###    1. X server and/or all users on a display      (Xconfig file)
###    2. all users on a display                      (Xsession file)
###    3. individual users                            (.dtprofile file)

Das heißt, wenn ich möchte, dass jeder Nutzer an dieser Workstation den vi-Modus nutzen können sollte, dann müsste ich den Eintrag set -o vi in der Datei /usr/dt/config/Xconfig machen, ist das korrekt?

Fragen über Fragen, ich hoffe ich strapaziere Deine Nerven nicht zu viel? Dafür werde ich Dir ordentlich Unities überweisen. 

Gruß, Talpa

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

KlausJ
Moderator



Sehen Sie sich das Profil von KlausJ an!   Senden Sie eine Private Message an KlausJ  Schreiben Sie einen Gästebucheintrag für KlausJ

Beiträge: 1336
Registriert: 17.03.2003

AIX 6.2
Windows XP

erstellt am: 25. Aug. 2004 10:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für talpa 10 Unities + Antwort hilfreich

Hallo Talpa,
ich kenne das Verfahren nur von AIX, aber ich glaube, daß der CDE weitgehend einheitlich ist.
Nachdem die System-Konfiguration durchlaufen ist, wird die Userspezifische durchlaufen. Der CDE startet mit dem .dtprofile. Findet er dort die unkommentierte Anweisung
dtsourceprofile=true
wird auch noch das .profile durchlaufen. Die Filenamen .kshrc oder .env sind egal, es wird immer nur das verwendet, was in $ENV steht. Du kannst selbstverständlich auch die .kshrc verwenden.
Mit Deiner Annahme könntest Du recht haben, habe es aber noch nicht ausprobiert, da bei uns jeder User - theoretisch jedenfalls - sein eigenes Environment "haben könnte. Wir sind gerade dabei, das wieder zu vereinheitlichen (ist aus dem Ruder gelaufen).

------------------
in diesem Sinne

Klaus 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

talpa
Mitglied
Program Manager


Sehen Sie sich das Profil von talpa an!   Senden Sie eine Private Message an talpa  Schreiben Sie einen Gästebucheintrag für talpa

Beiträge: 360
Registriert: 19.08.2002

erstellt am: 25. Aug. 2004 10:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Klaus,

Du warst mir wirklich eine große Hilfe, Danke nochmal!!!

Eventuell melde ich mich bald wieder mit noch ein paar ungelösten Unix-Problemen. Das hast Du jetzt davon, dass Du mir geholfen hast... 

Ciao, Talpa

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Karsten Dora
Mitglied


Sehen Sie sich das Profil von Karsten Dora an!   Senden Sie eine Private Message an Karsten Dora  Schreiben Sie einen Gästebucheintrag für Karsten Dora

Beiträge: 8
Registriert: 09.10.2003

erstellt am: 14. Okt. 2004 22:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für talpa 10 Unities + Antwort hilfreich

Hallo Zusammen,

wir haben in der /etc/profile eine Abfrage drin..ob root oder nicht root - und dann wird ENV gesetzt.
Somit drehe ich nur an einer Stelle. Ist insbesondere beim EInsatz von NIS sehr praktisch.

.dtprofile haben wir komplett auf komment stehen.. irix, solaris und aix .. der cde funktioniert immer irgendwie anders.. und ist historisch gewachsen ..auf deutsch gesagt ..ein Riesen Verhau..

aber .. es funzt.

------------------
AIX
IRIX
SUNSolaris
LINUX

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz