@mat Oh, ich wollte es gerade ausprobieren :). Trotzdem danke!
Pablo Fernandez
es funktioniert nicht , weil das <(foo) Konstrukt für den inneren Befehl warten beenden , bevor die Software lesen sein wird , aus der durch ein Rohr in der ursprünglichen Befehlszeile ersetzt werden kann, und Schwanz würde nie fertig :-)
Ja, so mache ich das, nur dass normalerweise mehrere Gnome-Terminals geöffnet sind, von denen jedes eine Sitzung enthält
Tom O'Connor
1
Gibt es eine Möglichkeit, dies zu tun, ohne mehrere unabhängige SSH-Sitzungen zu eröffnen?
tgies
8
Damit können Sie das Tailing jedoch nicht stoppen Ctrl+C.
Sorin
@sorin, um die Prozesse zu beenden, bringen Sie einfach jeden einzelnen mit in den Vordergrund fg. dann kannst du ctrl+ces. Du würdest das einmal für jeden Schwanz tun, den du laufen hast. Oder Sie können pkill -f sshalle gleichzeitig anvisieren.
Dale Anderson
34
Meine bevorzugte Option ist Multitail. Ich würde so etwas wie laufen:
Vielen Dank! Ich suchte nach einem Beispiel für die Verwendung von Multitail über ssh / auf Remote-Hosts!
Noah Sussman
Multitail ist eine weitaus robustere Lösung.
obfk
Unsere Website hat mehr als 10 Webknoten, und Multitail schlägt beim ersten Versuch mit dem Fehler fehl. Operation not permittedMit 2 bis 3 Webknoten ist dies in Ordnung
Hieu Vo,
Ich bekomme auch die Operation not permitted, irgendwelche Hinweise?
Erik Aigner
7
Sie können Fabric verwenden, um mehrere Hosts mit einem Tail zu versehen (und bei Bedarf auch Grep-Ergebnisse):
Mit der Option -f nach ssh können Sie ein Kennwort eingeben, bevor es im Hintergrund ausgeführt wird. Dann könnten Sie die zeilenweisen Ergebnisse in einer einzigen Datei haben und ausführen:
tail -f /tmp/somefile
Würde Ihnen ein wenig mehr Kontrolle über den aktuellen Befehl "tail" geben, falls Sie andere Optionen für die Anzeige der Ausgabe verwenden möchten.
Schauen Sie sich Multitail an . Genau wie in den obigen Beispielen können Sie es als Befehl an ssh übergeben. Anschließend werden auf einem Bildschirm mehrere Protokolle angezeigt (und gepuffert, um einen einfachen Bildlauf zu ermöglichen). Es färbt auch, was sehr nützlich ist, um Anomalien zu erkennen.
Dies wird funktionieren und Zeilen auf dem Terminal / dev / pts / 6 ausgeben (um Ihr eigenes Terminal herauszufinden: execute: who am i und es wird es Ihnen zeigen.)
Olivier Dulac
1
Sie können dbitail auschecken.
Ein von mir erstelltes Java-Tool, das lokale und entfernte Protokolldateien mit SSH lesen kann. Es ist ziemlich einfach zu bedienen.
Laden Sie einfach die Ihrem Betriebssystem entsprechende Version der in Ihrer Java Runtime ausführbaren JAR-Version herunter (erfordert Java 8_40 oder höher):
Oder Sie können screen verwenden, um zwei Terminals zu erstellen und sie dann zu teilen.
SSH auf dem ersten Host, auf dem Sie die Protokolldatei mit einem Tail versehen möchten, und bevor Sie tail ausführen, rufen Sie den Bildschirm auf.
Dann die Datei auf diesem Host abschließen.
STRG + A, c erstellt einen neuen Bildschirm oder ein neues Fenster. Aus diesem neuen Fenster ssh in den 2. Host und dort die Datei tailen.
Erstellen Sie nun den geteilten Bildschirm
STRG + A, UMSCHALT + S, dies erzeugt einen geteilten Bildschirm mit der aktuellen Shell im oberen Teil und dem leeren unteren Teil. Um zum unteren Teil zu wechseln und den ersten Bildschirm darin zu platzieren,
STRG + A, TAB, dadurch gelangen Sie zum unteren Teil. Bringen Sie jetzt Ihre erste SSH-Sitzung in diesen Bereich:
STRG + A, "(Anführungszeichen) und wählen Sie die erste Sitzung aus und drücken Sie die Eingabetaste.
Mir ist klar, dass dies wie eine Menge Gymnastik aussieht, und das ist es auch, aber Sie gewöhnen sich daran, wenn Sie es ein paar Mal benutzen.
Darüber hinaus können Sie eine .screenrc-Datei erstellen, damit vieles, was ich beschrieben habe, beim ersten Aufrufen des Bildschirms automatisiert werden kann.
Eine weitere nette Sache dabei ist, dass Sie Ihre Sitzung einfach schließen und an einem anderen Ort fortsetzen können. Zum Beispiel sind Sie auf der Arbeit und haben einige Überwachungsarbeiten im Gange. Sie können Ihre Sitzung einfach schließen, ohne sich abzumelden, und die Sitzung fortsetzen, wenn Sie zu Hause oder an einem anderen Ort sind.
Sie können Dateien remote mit bash und rsync bearbeiten. Ich verwende es und es ist ein großartiges Bash-Skript. Schauen Sie sich das folgende Tutorial an
Antworten:
Das hat bei mir funktioniert:
quelle
Ctrl+C
.fg
. dann kannst ductrl+c
es. Du würdest das einmal für jeden Schwanz tun, den du laufen hast. Oder Sie könnenpkill -f ssh
alle gleichzeitig anvisieren.Meine bevorzugte Option ist Multitail. Ich würde so etwas wie laufen:
quelle
Operation not permitted
Mit 2 bis 3 Webknoten ist dies in OrdnungOperation not permitted
, irgendwelche Hinweise?Sie können Fabric verwenden, um mehrere Hosts mit einem Tail zu versehen (und bei Bedarf auch Grep-Ergebnisse):
quelle
Ich dachte, es könnte auch möglich sein, Folgendes zu verwenden:
Mit der Option -f nach ssh können Sie ein Kennwort eingeben, bevor es im Hintergrund ausgeführt wird. Dann könnten Sie die zeilenweisen Ergebnisse in einer einzigen Datei haben und ausführen:
Würde Ihnen ein wenig mehr Kontrolle über den aktuellen Befehl "tail" geben, falls Sie andere Optionen für die Anzeige der Ausgabe verwenden möchten.
quelle
Schauen Sie sich diese Antwort auf stackoverflow an - sie verwendet dsh und tail -f.
quelle
Schauen Sie sich Multitail an . Genau wie in den obigen Beispielen können Sie es als Befehl an ssh übergeben. Anschließend werden auf einem Bildschirm mehrere Protokolle angezeigt (und gepuffert, um einen einfachen Bildlauf zu ermöglichen). Es färbt auch, was sehr nützlich ist, um Anomalien zu erkennen.
quelle
Parallel ssh hat dafür eine schöne Lösung:
-t0
deaktiviert das Verbindungs-Timeout, andernfalls hat pssh die Verbindung geschlossen-H '<host>...'
ist die Liste der Hosts, auf denen der Befehl ausgeführt werden soll-P
soll das Drucken der Standardausgabe jedes Hosts ermöglichentail -f /var/log/app.log
kann ein beliebiger Befehl sein, den Ihre Remote-Shell ausführen kannquelle
Was würdest du dazu sagen? http://gist.github.com/303175
quelle
Nur eine seltsame Lösung, aber es funktioniert !:
Bildschirm 1
Bildschirm 2
quelle
who am i
und es wird es Ihnen zeigen.)Sie können dbitail auschecken.
Ein von mir erstelltes Java-Tool, das lokale und entfernte Protokolldateien mit SSH lesen kann. Es ist ziemlich einfach zu bedienen.
Weitere Erklärungen: https://github.com/pschweitz/DBITail/wiki
Laden Sie einfach die Ihrem Betriebssystem entsprechende Version der in Ihrer Java Runtime ausführbaren JAR-Version herunter (erfordert Java 8_40 oder höher):
https://github.com/pschweitz/DBITail/releases
Sie finden eine vollständige Dokumentation (eingebettet in die Seite von und I Github).
Philippe
quelle
Oder Sie können screen verwenden, um zwei Terminals zu erstellen und sie dann zu teilen.
SSH auf dem ersten Host, auf dem Sie die Protokolldatei mit einem Tail versehen möchten, und bevor Sie tail ausführen, rufen Sie den Bildschirm auf.
Dann die Datei auf diesem Host abschließen.
STRG + A, c erstellt einen neuen Bildschirm oder ein neues Fenster. Aus diesem neuen Fenster ssh in den 2. Host und dort die Datei tailen.
Erstellen Sie nun den geteilten Bildschirm
STRG + A, UMSCHALT + S, dies erzeugt einen geteilten Bildschirm mit der aktuellen Shell im oberen Teil und dem leeren unteren Teil. Um zum unteren Teil zu wechseln und den ersten Bildschirm darin zu platzieren,
STRG + A, TAB, dadurch gelangen Sie zum unteren Teil. Bringen Sie jetzt Ihre erste SSH-Sitzung in diesen Bereich:
STRG + A, "(Anführungszeichen) und wählen Sie die erste Sitzung aus und drücken Sie die Eingabetaste.
Mir ist klar, dass dies wie eine Menge Gymnastik aussieht, und das ist es auch, aber Sie gewöhnen sich daran, wenn Sie es ein paar Mal benutzen.
Hier finden Sie ein wirklich gutes Tutorial oder eine Kurzanleitung zu den Bildschirmbefehlen: http://www.pixelbeat.org/lkdb/screen.html
Darüber hinaus können Sie eine .screenrc-Datei erstellen, damit vieles, was ich beschrieben habe, beim ersten Aufrufen des Bildschirms automatisiert werden kann.
Eine weitere nette Sache dabei ist, dass Sie Ihre Sitzung einfach schließen und an einem anderen Ort fortsetzen können. Zum Beispiel sind Sie auf der Arbeit und haben einige Überwachungsarbeiten im Gange. Sie können Ihre Sitzung einfach schließen, ohne sich abzumelden, und die Sitzung fortsetzen, wenn Sie zu Hause oder an einem anderen Ort sind.
quelle
Sie können Dateien remote mit bash und rsync bearbeiten. Ich verwende es und es ist ein großartiges Bash-Skript. Schauen Sie sich das folgende Tutorial an
Stellen Sie Dateien mit bash und rsync aus der Ferne bereit
quelle