我在 incrontab 中有一个如下所示的条目:
/var/www/html/tmp_files/xml IN_CLOSE_WRITE sh /var/www/html/tmp_files/notify.sh $# $@
在 notify.sh 我们有:
#!/bin/sh
filename="$1"
csvname="fightcard.cmd.csv"
if [ "${filename:0:1}" == "$action" ]; then
csvname="action.cmd.csv"
elif [ "${filename:0:1}" == "$stats" ]; then
csvname="stats.cmd.csv"
else
sleep 0.1
fi
#execute the ruby statement............
ruby /var/www/html/processXML.rb -f /var/www/html/tmp_files/xml/${filename} -c /var/www/html/${csvname} -l /var/www/html/tmp_files/logs/${filename}.log > /var/www/html/tmp_files/json/${filename%.xml}.json
我已将 notify.sh 修改为可执行文件。
所以我们ftp一个文件进去/var/www/html/tmp_files/xml/
当我从命令运行脚本时,一切正常,如下所示:
sh /var/www/html/tmp_files/notify2.sh Stats.xml
但是每当它从 incrontab 事件中触发时,我都会得到一个空白的 json 文件。
有人知道什么给了吗?