命令行手册

Man » multitail 在线手册 - multitail man 页面的详细在线文档

🌍
MultiTail - 一次浏览多个文件

概要

multitail [选项]

选项:[-cs|-Cs|-c-] [-s] [-i] 输入文件 [-i 另一个输入文件] [...]

描述

MultiTail 程序允许您像原始 tail 程序一样查看一个或多个文件。
不同之处在于,它会在控制台上创建多个窗口(使用 ncurses)。 它可以监控通配符:如果与通配符匹配的另一个文件具有更新的修改日期,它将自动切换到该文件。 这样,您可以监视整个文件目录。 可以合并 2 个或更多日志文件。 它可以还在显示日志文件时使用颜色(通过正则表达式),以便更快地识别哪些内容重要,哪些内容不重要。 它可以过滤行(再次使用正则表达式)。 它具有交互式菜单,用于编辑给定的正则表达式以及删除和添加窗口。 还可以拥有显示 shell 脚本和其他软件输出的窗口。 在查看外部软件的输出时,MultiTail 可以模拟“watch”等工具的功能。 当当前用户的收件箱中收到新邮件时,状态行将变为绿色。 要重置此“已收到邮件”状态,请按空格键。 如需随时获取帮助,请按 F1。

选项

-i 文件
选择要监视的文件。 您可以使用多个 -i 文件参数。 仅当文件名以连字符(“-”)开头时,才需要在文件名前面添加 -i 文件。

-I 文件
与 -i 文件 相同,但将输出添加到上一个窗口(因此,输出合并)。

-iw 文件 间隔
-Iw 文件 间隔 类似于“-i”/“-I”,但需要该参数为通配符,第二个参数为间隔。 最初,MultiTail 将从修改时间最新的第一个文件开始监视。 每次间隔,它都会检查是否创建(或修改)了任何新文件,并开始监视该文件。 *请不要忘记* 将文件名放在引号中,否则 shell 将尝试替换它们!

-l 命令
在窗口中执行的命令。 参数是命令。 别忘了使用单引号,如果外部命令需要参数!(例如,-l "ping host”)

-L 命令
与 -l 相同,但将输出添加到上一个窗口(因此,输出合并)。

-j
从标准输入读取(只能使用一次,因为只有一个标准输入)。

-J
与 -j 相同,但将输出添加到上一个窗口(因此,输出合并)。

--mergeall
将以下所有文件合并到同一个窗口中(请参阅“--no-mergeall”)。

--no-mergeall

停止将所有文件合并到一个窗口中(参见 '--mergeall');

--no-repeat

当同一行重复出现时,将抑制该行,同时打印一条“上次消息重复 x 次”的消息。

--mark-interval x

当没有其他内容被打印时,每隔 'x' 秒打印一条标记行。

-q i path

以间隔 'i' 检查 path 中的新文件,所有文件都在新的窗口中。可以使用 shell 识别的文件路径。例如 "/tmp/*"。请注意:不要忘记在路径名周围添加引号,以防止 shell 解析它!

-Q i path

类似于 -q:但将它们全部合并到一个窗口中。

--new-only

对于 -q/-Q:仅为 MultiTail 启动后创建的文件创建窗口。

--closeidle x

当超过 'x' 秒没有处理任何新数据时,关闭窗口。

-a x   将输出也写入文件 'x'(类似于 'tee'),在 MultiTail 过滤之后。请注意:
您需要将 "-a 文件" 放在您要监视的文件之前!

-A x   将输出也写入文件 'x'(类似于 'tee'),在 MultiTail 过滤之前。
请参阅关于 "-a" 的说明。

-g x   将输出也发送到命令 'x',在 MultiTail 过滤之后。

-G x   将输出也发送到命令 'x',在 MultiTail 过滤之前。

-S   在合并的输出前添加子窗口编号。

-t title

使用此开关,"title" 将显示在状态行中,而不是文件名或命令行。

-n number_of_lines

初始要尾随的行数。默认值取决于终端窗口的大小。

-N number_of_lines

类似于 -n,但此参数将用于在此参数之后尾随的所有文件/命令。

-r interval

在命令(使用 -l/-L 启动)退出后重新启动该命令。使用 interval 可以设置在重新启动之前要休眠多长时间。

-R interval

类似于 -r,但仅显示与上次运行相比的输出差异。

-rc / -Rc interval

类似于 -r / -R,但在每次迭代之前清除窗口。

-h   显示帮助信息。

-f   尾随以下文件名,而不是文件描述符。

--follow-all

对于此开关之后的所有文件:尾随以下文件名,而不是文件描述符。

-fr filter

使用来自配置文件中的预定义过滤器。

-e   对以下文件使用下一个正则表达式。

-ex   对以下文件使用正则表达式,并在匹配时执行该命令。该命令将整个匹配行作为命令行参数传递。

-eX   类似于 '-ex',但仅将匹配的子字符串作为参数传递。这需要使用带 '(' 和 ')' 的正则表达式。

-ec   对以下文件使用正则表达式并显示匹配项。

-eC   对以下文件使用正则表达式,但显示所有内容并以相反的颜色显示匹配项。

-E   对以下文件使用下一个正则表达式。

-v   否定下一个正则表达式。

-s x   将屏幕垂直分割为 'x' 列。

-sw x  指定屏幕分割的位置。例如 '-sw 20,40,,10'(=4 列)。

-sn x  用于垂直分割时,每列的窗口数量(与 -s 或 -sw 一起使用)。例如:'-sn 3,,2'。

-wh x  设置窗口的高度(提示:如果无法适应,则高度会进行调整)。

-cS scheme
使用在 `multitail.conf` 中定义的方案 `scheme` 显示下一个给定的文件。

-CS scheme
使用在 `multitail.conf` 中定义的方案 `scheme` 显示所有后续文件。

-csn  以下开关的额外开关;不使用反色(反转颜色)。

-cs  以颜色显示下一个给定的文件(syslog)。

-c  以颜色显示下一个给定的文件。

-Cs  以颜色显示所有后续文件(通过 syslog 方案)。

-C  以颜色显示所有后续文件。

-Cf field_index delimiter
以颜色显示所有后续文件,具体取决于使用 `field_index` 选择的字段。字段由定义的定界符分隔。

-cf field_index delimiter
以颜色显示下一个文件,具体取决于使用 `field_index` 选择的字段。字段由定义的定界符分隔。

-ci color
使用特定的颜色。在合并多个输出时很有用。

-cT terminalmode
解释终端代码。目前仅支持 ANSI。

-c-  不要为以下文件着色。

-C-  不要为以下文件着色。

-ts  在每行添加时间戳(格式可在 `multitail.conf` 中配置)。

-Z color
指定标记行的颜色属性。

-T  在标记行中放置时间戳。

-d  不要更新状态行。

-D  完全不显示状态行。

-du  将状态行放在数据窗口的上方。

-z  不显示“窗口已关闭”的窗口。

-u  设置屏幕更新间隔(用于慢速连接)。

-m nlines
设置缓冲区大小。如果希望取消缓冲区的限制,请将 nlines 设置为 0(零)。

-mb x  设置回滚缓冲区大小(以字节为单位,使用 xKB/MB/GB)。

-M nlines
为所有后续文件设置缓冲区大小。

-p x [y]
设置行尾换行:a = 打印所有内容,包括行尾换行。l = 仅显示从左侧开始,直到窗口的右侧。r = 从行的右侧开始显示所有内容。s = 从进程名称开始显示所有内容。S = 从进程名称之后开始显示所有内容。o = 从偏移量 'y' 开始显示所有内容。

-P x [y]
类似于 -p,但适用于所有后续窗口。

-ke x  使用正则表达式 'x' 剥离输入的部分内容。

-kr x y
从偏移量 x 开始剥离输入的部分内容,到偏移量 y 结束(不包括 y)。

-kc x y
剥离输入的部分内容:使用定界符 'x' 剥离列 'y'。

-ks x  使用来自配置文件中的编辑方案 'x'。

-w  不使用颜色。

-b n  设置制表符宽度。

--config filename
从给定的文件名加载配置。

-x  设置 xterm 标题:%f 将被替换为最后更改的文件,%h 将被替换为主机名,%l 将被替换为系统的负载,%m 将被替换为“有新邮件!”(如果当前用户有新邮件),%u 将被替换为当前有效用户,%t 将被替换为上次更改文件的的时间戳,%% 将被替换为一个 %。

-o configfile-item

通过命令行处理配置文件项,以防无法编辑默认配置文件。

--cont

将以“´”结尾的行连接起来。

--mark-interval interval

当没有输入时,每隔“interval”秒打印一个“---mark---”行。

--mark-change

当合并多个文件并且 multitail 在两个窗口之间切换时,打印一个带有文件名的标记行。

--no-mark-change

不要在文件更改时打印标记行(覆盖配置文件)。

--label text

在每一行前面加上“text”。当合并多个文件和/或命令时很有用。

--retry

如果后续文件无法访问,则继续尝试打开它。

--retry-all

类似于 --retry,但适用于所有后续文件。

-cv x

使用转换方案“x”(请参阅 multitail.conf)。

--basename

仅在状态行中显示文件名(而不是路径)。

-F file

将“file”用作配置文件(而不是默认配置文件)。

--no-load-global-config

不要加载全局配置文件。

--beep-interval x

让终端每处理 x 行就发出一次蜂鸣声。按主菜单中的“i”键,查看已发出多少次蜂鸣声。

--bi x

类似于“--beep-interval”,但仅适用于当前(子)窗口。可以按主菜单中的“t”键,查看有关此(子)窗口的蜂鸣声统计信息。

-H

显示心跳(以保持会话的活跃状态)。

-V

显示版本并退出。

程序运行时,您可以按一些键。要查看列表,请按 F1(或 ^h)。 您可以随时按 F1(或 ^h):它会提供与上下文相关的说明。按“q”退出程序。

示例

请参阅 http://www.vanheusden.com/multitail/examples.html 以获取更多示例。

multitail /var/log/apache/access_log logfile -i -filestartingwithdatsh

这将创建三个窗口。一个显示 /var/log/apache/access_log 的内容,一个显示 logfile 的内容,依此类推。

multitail -R 2 -l "netstat -t"

这将每 2 秒运行一次 netstat,然后显示自上次运行以来发生的变化。这样就可以看到正在建立的新连接和正在关闭的连接。

multitail logfile -l "ping 192.168.1.3"

这将创建两个窗口。一个显示 logfile 的内容,另一个显示“ping 192.168.1.3”的输出。

multitail /var/log/apache/access_log -I /var/log/apache/error_log

这将创建一个窗口,其中包含 /var/log/apache/access_log 的内容与 /var/log/apache/error_log 的内容合并。

multitail -M 0 /var/log/apache/access_log -I /var/log/apache/error_log

与上一个示例相同。此示例会将所有记录的条目存储在缓冲区中,以便以后可以浏览它们(按“b”键)。

文件

${XDG_CONFIG_HOME}/multitail/config

如果定义了 ${XDG_CONFIG_HOME}。

${HOME}/.multitailrc

如果定义了 ${HOME}。

~/.multitailrc
当未定义 ${XDG_CONFIG_HOME} 或 ${HOME} 时,它将使用 (struct passwd*)pp->pw_dir 来自 pwd.h 标准头文件。

错误

随着该程序随着时间的推移变得越来越大,并且有时会临时添加新的功能,可能会引入一些错误。如果您发现任何错误,请通知 _。

不过,除了调整终端窗口大小之外。在执行此类操作时,程序可能会崩溃。在这种情况下,将 ncurses 库升级到至少 5.3 版本可能会有所帮助。

参见

http://www.vanheusden.com/multitail/

注意事项

此页面描述了已安装的 multitail 包中找到的 MultiTail;其他版本可能略有不同。请将更正和补充内容发送到 \_。将程序中的错误报告发送到 \_。