inotifywait 不断中止
inotifywait keeps aborting
我有这个小脚本:
#!/bin/bash
echo "every time script is saved, run the script"
while inotifywait -e modify -qq ; do
done
这对我在过去几年编写脚本(在 tmux 左窗格中编辑文件,在 tmux 右窗格中自动执行脚本)时非常有帮助。但是现在...
我有一个类似的脚本:
#!/bin/bash
while inotifywait -e modify -qq file.py; do
python file.py stuff
done
当我保存文件时它就中止了。通过“中止”我的意思是,而不是 运行 python file.py stuff
并显示结果它只是 returns 我到命令提示符。
运行 命令 python file.py stuff
工作正常:文件仅打印提供给脚本的第一个参数,在本例中为“stuff”。但是这个 inotifywait 命令一直在中止。
为什么?如何排除故障?
man inotifywait
给出了以下示例,它与我使用它的方式几乎相同(我只是传递加法 -qq
标志):
#!/bin/sh
while inotifywait -e modify /var/log/messages; do
if tail -n1 /var/log/messages | grep httpd; then
kdialog --msgbox "Apache needs love!"
fi
done
因为我在做几乎相同的事情,所以我不知道为什么我应该尝试以不同的方式调用 inotifywait
,就像网络上的一些帖子所描述的那样(但我已经尝试了其中的几个,但没有成功)。
我在 tmux 环境中执行此操作,但我不知道这会如何影响它。我不知道要调查什么或如何调试它。
有什么想法吗?
inotifywait -e modify -qq
没有中止,它只是 returns 当事件不是 modify
.
时出错
试试这个:
#!/usr/bin/env bash
inotifywait -e modify -m file.py |\
while read; do
python file.py stuff
done
使用自定义 vimrc 时会出现问题...如果 file.py
像 vim -u .config/vimrc file.py
那样编辑会导致 inotifywait
脚本中止。
为什么 发生这种情况是未知的:using `vim -u` to specify custom vimrc causes inotifywait script to abort
我有这个小脚本:
#!/bin/bash
echo "every time script is saved, run the script"
while inotifywait -e modify -qq ; do
done
这对我在过去几年编写脚本(在 tmux 左窗格中编辑文件,在 tmux 右窗格中自动执行脚本)时非常有帮助。但是现在...
我有一个类似的脚本:
#!/bin/bash
while inotifywait -e modify -qq file.py; do
python file.py stuff
done
当我保存文件时它就中止了。通过“中止”我的意思是,而不是 运行 python file.py stuff
并显示结果它只是 returns 我到命令提示符。
运行 命令 python file.py stuff
工作正常:文件仅打印提供给脚本的第一个参数,在本例中为“stuff”。但是这个 inotifywait 命令一直在中止。
为什么?如何排除故障?
man inotifywait
给出了以下示例,它与我使用它的方式几乎相同(我只是传递加法 -qq
标志):
#!/bin/sh
while inotifywait -e modify /var/log/messages; do
if tail -n1 /var/log/messages | grep httpd; then
kdialog --msgbox "Apache needs love!"
fi
done
因为我在做几乎相同的事情,所以我不知道为什么我应该尝试以不同的方式调用 inotifywait
,就像网络上的一些帖子所描述的那样(但我已经尝试了其中的几个,但没有成功)。
我在 tmux 环境中执行此操作,但我不知道这会如何影响它。我不知道要调查什么或如何调试它。
有什么想法吗?
inotifywait -e modify -qq
没有中止,它只是 returns 当事件不是 modify
.
试试这个:
#!/usr/bin/env bash
inotifywait -e modify -m file.py |\
while read; do
python file.py stuff
done
使用自定义 vimrc 时会出现问题...如果 file.py
像 vim -u .config/vimrc file.py
那样编辑会导致 inotifywait
脚本中止。
为什么 发生这种情况是未知的:using `vim -u` to specify custom vimrc causes inotifywait script to abort