使用内部bash脚本时Inotifywait不起作用
我正在尝试使用使用内部bash脚本时Inotifywait不起作用,bash,inotify,inotify-tools,Bash,Inotify,Inotify Tools,我正在尝试使用inotiy工具创建一个bash脚本,用于监视目录 这是我的剧本 while f=$(inotifywait -m -e create -q -r "/media/data2/Music/English" --format '%f %w') do echo "$f" done 问题是,当我运行上面的脚本时,它不会在终端上打印任何内容。我已经检查了inotifywait命令,它在终端上运行良好,但为什么它不能在我的脚本中工作 inotifywait on终端 问题是f=$
inotiy工具
创建一个bash脚本,用于监视目录
这是我的剧本
while f=$(inotifywait -m -e create -q -r "/media/data2/Music/English" --format '%f %w')
do
echo "$f"
done
问题是,当我运行上面的脚本时,它不会在终端上打印任何内容。我已经检查了inotifywait
命令,它在终端上运行良好,但为什么它不能在我的脚本中工作
inotifywait on终端
问题是f=$(inotifywait…
等待该命令结束,然后才给出输出
我很少写bash,但您可以尝试:
inotifywait .... |
while read line
do
echo $line
done
不要在该上下文中使用
-m
开关,否则inotifywait
命令将永远不会在循环时将控件返回到。另外,您能否给我指出正确的文档,其中说明$()
等待该命令结束,然后才给出输出。
inotifywait .... |
while read line
do
echo $line
done