Ich möchte einen Befehl foo auf einem Terminal ausführen und das Ergebnis an ein anderes Terminal übergeben. Ist das möglich?
command-line
gnome-terminal
Mohammad Reza Rezwani
quelle
quelle
Antworten:
Ja ist es. Ein Bild, das mehr als tausend Worte sagt:
Sie müssen also die Ausgabe Ihres Befehls mithilfe des
>
Operators an umleiten/dev/pts/#
. Sie können#
mitwho
oderw
Befehl finden. Wenn du und die Fehler umleiten willst, benutze:quelle
gnome-terminal
und das tty (using-tty
Kommando) des neuen Terminals erkennen und schließlich die Ausgabe an dieses senden.So etwas für Ihre
$HOME/.bashrc
:Dadurch wird ein Befehl ausgeführt und das Ergebnis in einem neuen Terminalfenster angezeigt.
Beispiele:
Bearbeiten: Um Aliase aus der
$HOME/.bashrc
Verwendung zu berücksichtigen, verwenden Sie stattdessen Folgendes :dann sollte die Ausgabe von
ls
farbig sein (danke an Radu Rădeanu für diesen Hinweis ).quelle
type ls
und dannng type ls
:)ng() { gnome-terminal -x sh -c "$*; bash" ;}
sollte es besser sein. Und wenn Sie xfce (xfce4-terminal als Standardemulator) verwenden:ng() { xfce4-terminal -x sh -c "$*; bash" ;}
oder Sie können einfach einen Standardemulator verwendenng() { x-terminal-emulator -x sh -c "$*; bash";}