首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更少使用“更新文件”之类的功能

更少使用“更新文件”之类的功能
EN

Server Fault用户
提问于 2012-11-06 12:54:18
回答 4查看 8K关注 0票数 11

我想看一个文件,它每5分钟就会被less覆盖一次。如何使less跟踪新的文件描述符而不是显示旧的文件描述符呢?watch "cat file"不会这样做,因为文件太长,无法容纳到一个终端窗口中。

EN

回答 4

Server Fault用户

发布于 2012-11-06 14:45:56

您可以在vim中做类似的事情。

启动vim的服务器会话:

代码语言:javascript
复制
vim -R --servername refresh_session

然后,在另一个控制台中,监视文件的更新,并告诉vim会话在文件更新后立即重新加载文件:

代码语言:javascript
复制
inotifywait -e close_write -m your_log_file | while read filename events; do
    vim --servername refresh_session --remote $filename
done

有几个问题。

  • 当然,如果您的vim没有使用clientserver特性编译,则这将无法工作。
  • 当文件被删除时,inoifywait将停止工作。所以我希望你的文件被改写。当然,解决这一问题也是可能的。

如果您想拥有更多的less-like体验,可以使用less宏在vim中获取less键绑定。

代码语言:javascript
复制
/usr/share/vim/vim73/macros/less.sh --servername refresh_session
票数 2
EN

Server Fault用户

发布于 2012-11-06 12:57:48

您可以尝试以下命令: tail -f文件

票数 0
EN

Server Fault用户

发布于 2012-11-06 12:59:04

尾巴是你的朋友。“尾部-f文件名”将在新行出现时显示出来。

或者,如果您正在寻找在文件中间所做的更改,可以每隔几分钟运行一个脚本,以便将文件复制到临时位置并对其进行区分?

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/445899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档