Führen Sie einen Befehl in der neuen interaktiven Tcsh-Shell aus

393
Krishna

Wie kann ich einen Vorkommando in einer neuen interaktiven Shell von Tcsh ausführen?

Bsp: Zum Nachahmen bash -O globstarin tcsh können wir das tun set globstar.

Ich muss jedoch eine neue tcshShell mit 'set globstar' starten, ohne vom Benutzer abhängig zu sein oder ihn zu ändern rcfile.

tcsh -c 'set globstarfunktioniert nicht, da die interaktive Shell nicht verlassen wird. Wird sofort nach Ausführung des Befehls beendet.

0

1 Antwort auf die Frage

0
Kamil Maciorowski

Bash versteht --rcfile, was es Ihnen erlaubt, Alternativen zu finden .bashrc, aber ich habe keine ähnliche Option für gefunden tcsh.

Ohne das habe ich es geschafft, das zu erreichen, was Sie wollen, indem ich meine Antwort modifizierte . Es verwendet expect. Das Skript lautet:

#!/usr/bin/expect   log_user 0 spawn /bin/tcsh send "set globstar\n" interact 

Passen Sie ggf. die Pfade an. Speichern Sie den Code in einer Datei, machen Sie die Datei ausführbar, und führen Sie sie aus.

Ich habe mich gefragt, ob "tcsh" eine eingebaute Unterstützung dafür bietet. Vielen Dank für den Hinweis auf "expect" @ kamil-maciorowski. Krishna vor 5 Jahren 0