Bash 使用'tail-f时文件被截断时清除屏幕`
我正在使用Bash 使用'tail-f时文件被截断时清除屏幕`,bash,tail,gnu-coreutils,Bash,Tail,Gnu Coreutils,我正在使用tail-f打印一个不断变化的文件的内容。当文件被截断时,它显示如下: blah (old).. blah more (old).. tail: file.out: file truncated blah.. blah more.. 当我太频繁地更改文件时,这可能会变得混乱,以至于很难看到文件的开始/结束位置。当文件被截断时,是否有办法清除屏幕,使其显示如下 tail: file.out: file truncated blah.. blah more.. 您可以使用perlone
tail-f
打印一个不断变化的文件的内容。当文件被截断时,它显示如下:
blah (old)..
blah more (old)..
tail: file.out: file truncated
blah..
blah more..
当我太频繁地更改文件时,这可能会变得混乱,以至于很难看到文件的开始/结束位置。当文件被截断时,是否有办法清除屏幕,使其显示如下
tail: file.out: file truncated
blah..
blah more..
您可以使用perl
one行程序来过滤tail-f的输出
e、 g
tailf myfile.txt
这是tailf命令,而不是tail-f命令
使用此命令,屏幕上不会返回任何截断的文件我知道这是旧的,但另一个(可能更简单)的解决方案是:
watch-n1 cat myfile.txt
这并没有按照我的要求清除屏幕上的旧内容。无论如何,Benj的答案是有效的,谢谢..你很抱歉我的坏朋友一开始看到了清晰,然后在查看时完全忘记了典型的日终错误:)很高兴你让它按要求工作+1,这实际上是我这些天一直在使用的。但我不记得我是从哪里弄到这个的。。
tail -f myfile.txt 2>&1 | perl -ne 'if (/file truncated/) {system 'clear'; print} else {print}'