繁体   English   中英

Ubuntu BASH inotifywait触发另一个脚本

[英]Ubuntu BASH inotifywait to trigger another script

我正在尝试在bash脚本中使用inotifywait来监视目录中包含特定标签(* SDS.csv)的文件。

我也只想执行一次(一次将文件写入目录data)。

例:

#! /bin/bash
inotifywait -m -e /home/adam/data | while read LINE
do
  if [[ $LINE == *SDS.csv ]]; then
     ./another_script.sh
  fi
done

尽管这可能不是理想的解决方案,但可以解决问题:

#! /bin/bash
while true
do
    FNAME="$(inotifywait -e close_write /home/adam/data | awk '{ print $NF }')"

    if [ -f "/home/adam/data/$FNAME" ]
    then
      if grep -q 'SDS.csv' "/home/adam/data/$FNAME"
      then
         ./another_script.sh
      fi
    done
done

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM