linux监视文件用什么命令?linux实时查看文件修改

在 Linux 系统中,监视文件(监控文件的变化、创建、删除、修改等)是一个常见的需求,常用于日志分析、自动化部署、同步数据等场景。

以下是几种常用的方法,从简单到高级排列:

在linux中如何查看隐藏文件
加载中
在linux中如何查看隐藏文件

tail -f:监视文件内容变化(最常用)

适用于实时查看日志文件或文本内容的追加。

tail -f /var/log/syslog
  • 功能:实时显示文件末尾的内容,当有新内容写入时自动刷新。
  • 常用参数
    • -f:持续跟踪文件。
    • -F:类似 -f,但如果文件被删除或重命名,它会等待文件重新创建(适合日志轮转场景)。
    • --pid=PID:当指定进程结束时退出监视。

inotifywait:监视文件系统事件(推荐)

这是 inotify-tools 包中的一个工具,可以监视文件的元数据变化(如修改、创建、删除、权限更改等),而不仅仅是内容追加。

安装

# Ubuntu/Debian
sudo apt install inotify-tools
# CentOS/RHEL
sudo yum install inotify-tools

基本用法

linux监视文件用什么命令?linux实时查看文件修改

# 监视单个文件的变化 inotifywait -m /path/to/file # 监视目录及其子目录 inotifywait -m -r /path/to/dir

常用参数

  • -m:持续监视(monitor),不退出。
  • -r:递归监视子目录。
  • -e:指定监视的事件类型,如 modify, create, delete, move, attrib 等。
  • -q:安静模式,减少输出。

示例:监视文件修改并执行命令

inotifywait -m -e modify /path/to/file | while read path action file; do
    echo "文件 $file 被修改了"
    # 在这里执行你的脚本,例如重启服务
    sudo systemctl restart myservice
done

常见事件类型

  • CREATE:文件或目录被创建。
  • DELETE:文件或目录被删除。
  • MODIFY被修改。
  • MOVE:文件或目录被移动。
  • ATTRIB:文件属性(如权限、时间戳)被修改。

watch:定期执行命令并显示结果

适用于周期性检查文件状态(如大小、权限、时间戳)。

# 每2秒显示一次文件信息
watch -n 2 ls -l /path/to/file
# 监视文件大小变化
watch -n 1 stat /path/to/file

linux监视文件用什么命令?linux实时查看文件修改

  • 优点:简单直观,适合人类观察。
  • 缺点:不是实时事件驱动,而是轮询方式,可能有延迟。

find + watch 或脚本:复杂监视

如果需要更复杂的逻辑(如监视多个文件、特定条件),可以结合 findwhile 循环。

# 监视目录下所有 .log 文件的修改时间
while true; do
    find /path/to/dir -name ".log" -newer /tmp/last_check -exec ls -l {} ;
    touch /tmp/last_check  # 更新参考时间
    sleep 5
done

高级工具:entrfswatch

entr(Event Notify Tool)

  • 简单易用,适合执行命令。
  • 安装:sudo apt install entr
  • 用法:
    ls .c | entr -d gcc -o main main.c
    # 当 .c 文件变化时,自动重新编译

fswatch

  • 跨平台,支持多种后端(inotify, FSEvents, kqueue 等)。
  • 适合需要跨平台兼容性的场景。

总结对比

linux监视文件用什么命令?linux实时查看文件修改

工具 适用场景 实时性 复杂度 是否事件驱动
tail -f 查看日志内容追加
inotifywait 监视文件元数据变化(创建/删除/修改)
watch 周期性检查文件状态 中(轮询)
entr 文件变化时执行命令
fswatch 跨平台文件监视

推荐选择

  • 只看日志内容:用 tail -f
  • 需要响应文件创建/删除/修改事件:用 inotifywait
  • 文件变化时自动执行脚本:用 inotifywaitentr
  • 简单查看文件状态:用 watch

如果你有具体的使用场景(监视某个目录下的新文件并上传到服务器),可以提供更多细节,我可以为你编写具体的脚本。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/480643.html

(0)
分享wifi密码怎么设置?手机连不上wifi密码忘了怎么办
上一篇 2026年7月10日 15:13
如何在Excel中快速删除时间?excel删除时间格式保留日期
下一篇 2026年7月10日 15:15

相关推荐

  • {action api框架_FS Action}是什么?详解FS Action框架用法与优势

    action api框架_FS Action是当前企业级应用开发中实现高效逻辑编排与自动化流程控制的核心解决方案,其核心价值在于通过标准化的接口定义与灵活的动作编排机制,显著降低系统耦合度并提升业务响应速度,该框架不仅解决了传统开发模式中代码复用率低、维护成本高的痛点,更通过高度抽象的动作单元,为复杂业务场景提……

    2026年3月24日
    14400
  • 国外云主机公司哪家好,国外云主机怎么选?

    选择合适的国外云主机公司是建立全球数字业务的基石,其核心结论在于:没有绝对最好的服务商,只有最适合业务场景的架构方案,企业应基于业务覆盖范围、数据合规性要求及技术栈需求,综合评估基础设施的稳定性与扩展性,而非单纯追求低价,优质的云服务能够通过全球节点布局降低访问延迟,并提供符合国际标准的安全防护,确保业务在跨国……

    2026年2月25日
    15300
  • linux readelf命令怎么用?,有什么用

    readelf是Linux环境下解析ELF文件不可或缺的工具,熟练掌握它,你就能直接读懂程序的二进制骨骼,从而在调试、逆向分析和性能优化中占据主动,readelf命令详解:从基础到高级用法readelf名字本身就说明了一切——读取ELF格式文件,无论是可执行文件、目标文件还是共享库,只要遵循ELF规范,read……

    2026年7月15日
    500
  • 活塞君2b2t服务器号到底是多少,怎么进服务器?

    活塞君提及的2b2t服务器,其服务器号(即连接地址)为2b2t.org,默认端口为25565,这是该经典无政府状态Minecraft服务器的唯一官方入口, 无论你听到的“活塞君”是指一位红石玩家、一段服务器历史谜因,还是某个特定存档,2b2t的接入方式始终不变,了解2b2t与“活塞君”的关联2b2t服务器简介2……

    2026年8月4日
    600
  • ai怎么存储为psd格式,源端为对象存储如何操作

    AI文件存储为PSD格式且源端数据位于对象存储环境下的最佳实践方案是:采用“云端高速缓存+本地专业转换+智能回传”的作业流,这一方案能有效解决网络延迟、图层信息丢失及色彩模式不兼容等核心痛点,确保设计资产在从AI矢量格式向PSD位图格式转换的过程中,保持最高的保真度与可编辑性,同时保障源端对象存储数据的完整性与……

    2026年3月27日
    8600
  • 华为k22r-02服务器报价多少?,值得买吗

    华为K22R-02服务器的价格并非固定数值,它由CPU、内存、存储、网络等配置选项,以及采购渠道和附加服务共同决定,入门配置通常在数万元,高配版本可能超过十万元,实际成交价需要根据具体需求与供应商协商,华为K22R-02是一款面向企业关键业务设计的机架服务器,在虚拟化、数据库和云计算场景中表现稳定,它的定价策略……

    2026年8月17日
    500
  • 搬瓦工优惠码怎么用?2026最新激活教程

    2021年BandwagonHost(搬瓦工)最省钱的策略是结合“黑五/周年庆”节点使用专属优惠码,并优先选择按年付费的CN2 GIA线路套餐,而非按月续费,对于许多需要稳定海外连接的用户来说,选择VPS服务商往往是一场关于性价比与稳定性的博弈,搬瓦工作为老牌服务商,其CN2 GIA线路因低延迟、高稳定性备受推……

    2026年7月4日
    13400
  • CMIVPS香港VPS月付年付折扣多少?香港VPS主机推荐

    CMIVPS本月推出的香港200GB及HK-CN2-8000GB方案,凭借月付8折、年付7折的优惠力度,成为追求低延迟与高稳定性跨境业务的首选,尤其适合对网络质量有严苛要求的建站与开发场景,在服务器租赁市场,价格战早已不是唯一的竞争维度,稳定性与网络链路的质量才是决定业务生死的关键,对于许多需要连接中国大陆用户……

    2026年7月3日
    13010
  • AI人工智能开发平台好用吗?2026最新AI开发平台推荐

    AI人工智能开发平台的核心价值在于通过低代码或无代码方式,将复杂的算法模型转化为可落地的业务应用,从而显著降低开发门槛并加速企业智能化转型进程,为什么企业需要专用的AI开发平台过去,构建一个智能应用需要团队掌握Python、TensorFlow、PyTorch等底层框架,还要处理数据清洗、模型训练、部署运维等一……

    2026年6月3日
    6300
  • Android SP数据存储怎么用?Android SharedPreferences保存数据

    Android中的SharedPreferences(SP)是一种轻量级的键值对存储机制,适用于保存应用配置、用户偏好设置等小规模数据,但不适合存储大量或敏感信息,在Android开发的世界里,数据存储就像是一个家庭的账本,有的账本用来记每天买菜花了多少钱(轻量级、高频访问),有的账本用来存房产证和银行存折(重……

    行业资讯 2026年6月1日
    4100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注