2009-05-26 8 views
4

Je veux la queue plusieurs fichiers (et les suivre) dans CentOS, je l'ai essayé ceci:queue plusieurs fichiers dans CentOS

tail -f fichier1 fichier2 fichier3

mais la sortie est très hostile

J'ai aussi jeté un oeil à multitail mais je ne trouve pas de version CentOS.

Quels autres choix ai-je?

Répondre

6

Multitail est disponible pour CentOS dans les repos rpmforge. Pour ajouter le référentiel rpmforge, vérifiez the documentation on 3rd Party Repositories.

+0

Cette page a déclaré: "RPMForge/RepoForge - Ceci est un projet mort, non géré, NE PAS UTILISER." – simomo

2

Vous pouvez simuler multitail en ouvrant plusieurs instances de tail -f dans les sous-fenêtres Emacs.

+1

Vous pouvez également faire la même chose dans GNU de écran. – brianegge

2

En général, j'ouvre simplement un autre xterm et y exécute un 'tail -f' séparé. Sinon, si j'utilise l'outil 'screen', je vais mettre en place des commandes séparées 'tail -f'. Je n'aime pas ça autant parce qu'il faut quelques touches pour activer le défilement avant d'utiliser les touches Page Up et Page Down. Je préfère juste utiliser la barre de défilement de xterm.

2

J'ai trouvé la solution décrite ici fonctionne bien sur CentOS:

Le lien est http://www.thegeekstuff.com/2009/09/multitail-to-view-tail-f-output-of-multiple-log-files-in-one-terminal/

Merci à 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

Une meilleure réponse à une question ancienne ...

Je crée une fonction shell dans mon .bashrc (en supposant que vous utilisez bash comme shell) et utilise tmux. Vous pouvez probablement compliquer cela beaucoup et le faire sans le fichier temporaire, mais la citation est juste moche si vous essayez de vous assurer que les fichiers avec des espaces ou d'autres caractères étranges dans le nom fonctionnent toujours.

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

Vous pouvez utiliser la commande de la montre, je l'utilise à la queue deux fichiers en même temps:

regarder -N0 queue -n30 fichier1 fichier2

Questions connexes