2009-05-26 11 views
4

Ich möchte Schwanz mehrere Dateien (und ihnen folgen) in CentOS, ich habe dies versucht:Schwanz mehrere Dateien in CentOS

tail -f file1 file2 file3

aber die Ausgabe ist sehr unfreundlich

Ich habe mir auch Multitail angesehen, kann aber keine CentOS Version finden.

Welche anderen Möglichkeiten habe ich?

Antwort

6

Multitail ist für CentOS in rpmforge Repos verfügbar. Um das RPMforge-Repository hinzuzufügen, überprüfen Sie the documentation on 3rd Party Repositories.

+0

Diese Seite sagte: "RPMForge/RepoForge - Dies ist ein totes Projekt. Nicht gepflegt. NICHT verwenden." – simomo

2

Sie könnten Multitail simulieren, indem Sie mehrere Instanzen von tail -f in Emacs-Unterfenstern öffnen.

+1

Sie auch in GNU das gleiche tun konnten beobachten Bildschirm. – brianegge

2

Normalerweise öffne ich einfach einen anderen xterm und führe dort einen separaten 'tail -f' aus.

Andernfalls, wenn ich das "Bildschirm" -Tool verwende, werde ich dort separate 'tail -f' Befehle einrichten. Ich mag das nicht so sehr, weil es ein paar Tastenanschläge benötigt, um das Blättern im Bildschirm zu ermöglichen, bevor die Tasten Bild hoch und Bild runter benutzt werden. Ich bevorzuge nur die Scrollleiste von Xterm.

2

Ich fand die hier beschriebene Lösung funktioniert gut auf CentOS:

Der Link ist http://www.thegeekstuff.com/2009/09/multitail-to-view-tail-f-output-of-multiple-log-files-in-one-terminal/

Dank Ramesh Natarajan

$ vi multi-tail.sh 
    #!/bin/sh 

    # When this exits, exit all back ground process also. 
    trap 'kill $(jobs -p)' EXIT 

    # iterate through the each given file names, 
    for file in "[email protected]" 
    do 
     # show tails of each in background. 
     tail -f $file & 
    done 

    # wait .. until CTRL+C 
    wait 
0

Eine bessere Antwort auf eine alte Frage ...

Ich erstelle eine Shell-Funktion in meiner .bashrc (natürlich vorausgesetzt, Sie verwenden bash als Ihre Shell) und verwenden Sie tmux. Sie können dies wahrscheinlich sehr viel komplizierter machen und tun es ohne die Tempdatei, aber das Zitat ist nur hässlich, wenn Sie versuchen, sicherzustellen, dass Dateien mit Leerzeichen oder anderen seltsamen Zeichen im Namen funktionieren.

multitail() 
{ 
    cmdfile=`mktemp` 

    echo "new-session -d \"tail -f '$1'\"" >$cmdfile 
    shift 

    for file in "[email protected]" 
    do 
     echo "split-window -d \"tail -f '$file'\"" >>$cmdfile 
    done 

    echo "select-layout even-vertical" >>$cmdfile 
    tmux source-file $cmdfile \; attach && rm -f $cmdfile 
} 
1

können Sie die Uhr Befehl, ich es bis zum Schwanz zwei Dateien zur gleichen Zeit verwenden:

-N0 Schwanz -n30 Datei1 Datei2