Americas

  • United States
sandra_henrystocker
Unix Dweeb

Using multitail on Linux

How-To
Oct 16, 20194 mins
Linux

The multitail command can be very helpful whenever you want to watch activity on a number of files at the same time – especially log files. It works like a multi-windowed tail -f command. That is, it displays the bottoms of files and new lines as they are being added. While easy to use in general, multitail does provide some command-line and interactive options that you should be aware of before you start to use it routinely.

Basic multitail-ing

The simplest use of multitail is to list the names of the files that you wish to watch on the command line. This command splits the screen horizontally (i.e., top and bottom), displaying the bottom of each of the files along with updates.

$ multitail /var/log/syslog /var/log/dmesg

The display will be split like this:

+-----------------------+
|                       |
|                       |
+-----------------------|
|                       |
|                       |
+-----------------------+ 

The lines displayed from each of the files would be followed by a single line per file that includes the assigned file number (starting with 00), the file name, the file size, and the date and time the most recent content was added. Each of the files will be allotted half the space available regardless of its size or activity. For example:

content lines from my1.log
more content
more lines

00] my1.log                                    59KB - 2019/10/14 12:12:09
content lines from my2.log
more content
more lines

01] my2.log                                   120KB - 2019/10/14 14:22:29

Note that multitail will not complain if you ask it to display non-text files or files that you have no permission to view; you just won’t see the contents.

You can also use wild cards to specify the files that you want to watch:

$ multitail my*.log

One thing to keep in mind is that multitail is going to split the screen evenly. If you specify too many files, you will see only a few lines from each and you will only see the first seven or so of the requested files if you list too many unless you take extra steps to view the later files (see the scrolling option described below). The exact result depends on the how many lines are available in your terminal window.

Press q to quit multitail and return to your normal screen view.

Dividing the screen

Multitail will split your terminal window vertically (i.e., left and right) if you prefer. For this, use the -s option. If you specify three files, the right side of your screen will be divided horizontally as well. With four, you’ll have four equal-sized windows.

+-----------+-----------+     +-----------+-----------+     +-----------+-----------+
|           |           |     |           |           |     |           |           |
|           |           |     |           |           |     |           |           |
|           |           |     |           +-----------+     +-----------+-----------+
|           |           |     |           |           |     |           |           |
|           |           |     |           |           |     |           |           |
+-----------+-----------+     +-----------+-----------+     +-----------+-----------+
         2 files                       3 files                       4 files

Use multitail -s 3 file1 file2 file3 if you want to split the screen into three columns.

+-------+-------+-------+
|       |       |       |
|       |       |       |
|       |       |       |
|       |       |       |
|       |       |       |
+-------+-------+-------+ 
    3 files with -s 3

Scrolling

You can scroll up and down through displayed files, but you need to press b to bring up a selection menu and then use the up and arrow buttons to select the file you wish to scroll through. Then press the enter key. You can then scroll through the lines in an enlarged area, again using the up and down arrows. Press q when you’re done to go back to the normal view.

Getting Help

Pressing h in multitail will open a help menu describing some of the basic operations, though the man page provides quite a bit more information and is worth perusing if you want to learn even more about using this tool.

Multitail will not likely be installed on your system by default, but using apt-get or yum should get you to an easy install. The tool provides a lot of functionality, but with its character-based display, window borders will just be strings of q‘s and x‘s. It’s a very handy when you need to keep an eye on file updates.

sandra_henrystocker
Unix Dweeb

Sandra Henry-Stocker has been administering Unix systems for more than 30 years. She describes herself as "USL" (Unix as a second language) but remembers enough English to write books and buy groceries. She lives in the mountains in Virginia where, when not working with or writing about Unix, she's chasing the bears away from her bird feeders.

The opinions expressed in this blog are those of Sandra Henry-Stocker and do not necessarily represent those of IDG Communications, Inc., its parent, subsidiary or affiliated companies.