当我使用 监视某些日志文件时tail -F file.log
,我可以按enter
在实际日志行和新日志行之间添加一些空格,例如:
some log 1
some log 2
some log 3
some log 4
some log 5
但是当我用 监视某个文件时less file.log
,按下该键时无法添加这样的空间enter
。我怎样才能添加这种tail -F file.log
行为less file.log
?
更新
我不想编辑日志文件,我只需要在实时查看它们时(当我在应用程序上运行测试时)在输出上添加一些间距。文件是否要编辑是无关紧要的。
我只是想使用less
而不是tail
因为less
它的功能更丰富,如在缓冲区中查找等。
答案1
mkfifo fifo
tail -F file.log >fifo &
./script.sh | less
用这个脚本:
#!/bin/bash
exec 3<fifo
while true; do
IFS= read -r -u 3 line
test -n "$line" && echo "$line"
if read -t 1 dummyline; then
echo
fi
done