How To Tail (View) Multiple Files on UNIX / Linux Console

last updated in Categories data center, Debian Linux, Download of the day, fedora linux, File system, FreeBSD, Gentoo Linux, GNU/Open source, Howto, Linux, Linux Log Management, Monitoring, package management, RedHat/Fedora Linux, Suse Linux, Sys admin, Tip of the day, UNIX

The tail command is one of the best tool to view log files in a real time using tail -f /path/to/log.file syntax on a Unix-like systems. The program MultiTail lets you view one or multiple files like the original tail program. The difference is that it creates multiple windows on your console (with ncurses). This is one of those dream come true program for UNIX sys admin job. You can browse through several log files at once and do various operations like search for errors and more.

Install MultiTail On a Linux

Type the following command under Debian / Ubuntu Linux:
$ sudo apt-get update
$ sudo apt-get install multitail

RHEL/CentOS/Fedora/Red Hat Enterprise Linux user type the following yum command (first turn on EPEL repo for RHEL/CentOS v5.x/6.x and EPEL repo for RHEL/CentOS version 7.x):
# yum install multitail

If you are using FreeBSD, enter:
# portsnap fetch update
# cd /usr/ports/sysutils/multitail
# make install clean

Apple Mac OS X user type the following command:
$ brew install multitail

How To View Multiple Files Like tail Command

To view /var/log/messages and /var/log/auth.log, enter:
# multitail /var/log/messages /var/log/auth.log
Sample output:

Here is another output with lots of logfiles and command output in multiple windows in a terminal:

Multitail in action
Multitail in action

How do I run a command and view a log file?

Simply use command as follows:
# multitail /var/log/iptables.log -l "ping"
# multitail /var/log/httpd.log -l "netstat -nat"
The -l option allows command to execute in a window. Do not forget to use “‘s if the external command needs parameter! (e.g. -l “ping host”).

How do I display 3 logfiles in 2 columns?

To see all 3 files related to anti mail server gateway, enter:
# multitail -s 2 /var/log/maillog /var/log/FuzzyOcr.log /var/log/antivirus.log
multitail has many other useful options. Please read man page for further details:
man multitail

Further readings:

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

17 comment

  1. Thanks for the tip!
    Don’t forget xtail. I use it to monitor hits to multiple sites with logstalgia and other programs that are designed for regular tail, but works great with xtail too.

  2. Been trying multitail off and on for a while now…but one thing that has always got me:
    when viewing say access logs for webserver it has a good 5-10 delay it seems.

  3. Is it possible to view multiple files but in one view? Eg view the same log file from 5 different machines but all as one?

    For example

    Log Line from Machine 1
    Log Line from Machine 1
    Log Line from Machine 2
    Log Line from Machine 4
    Log Line from Machine 2

    Is this possible?

  4. I usually run tail with grep so I’m only see what I’m looking for. Is that possible with multitail? I’ll snag it and play with it later.

  5. For earlier centos version your need first to install EPEL repository otherwise you will get

    [root@mail ~]# yum install multitail
    Loaded plugins: fastestmirror, security
    Loading mirror speeds from cached hostfile
    * base:
    * extras:
    * updates:
    Setting up Install Process
    No package multitail available.
    Nothing to do

  6. Most modern tail implementations can take more than one file inherently.

    tail -f /var/log/messages /var/log/auth.log /var/log/syslog

    Have a question? Post it on our forum!