You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写Bash脚本:打开Vim编辑时监控文件修改并触发操作

解决方法

原脚本是顺序执行逻辑,必须等Vim退出后才会启动文件监控,要实现编辑时同步监控,只需将监控进程放到后台运行,编辑完成后再清理后台进程:

修改后的完整脚本:

#!/usr/bin/env bash

# 启动inotifywait监控并放入后台
inotifywait --quiet --monitor --event modify chart.csv | while read; do
    notify-send "文件已保存:chart.csv"
done &

# 记录后台监控进程的PID
MONITOR_PID=$!

# 启动Vim编辑目标文件
vim chart.csv

# Vim退出后,终止后台监控进程
kill $MONITOR_PID

几点优化说明

  • 用&将监控管道进程放到后台,实现与Vim并行运行
  • 通过$!获取后台进程PID,确保Vim退出后能准确停止监控
  • 移除了不必要的--recursive参数(单个文件监控不需要递归)

内容的提问来源于stack exchange,提问作者Unix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 08:25:55