请考虑以下命令:sudo incrontab ~/incron-config,其中~/incron-config包含:
/home/zetah/doc IN_CREATE,IN_MOVED_TO /home/zetah/scripts/do_something.sh $@/$#do_something.sh由两个部分组成
#! /bin/bash
python /home/zetah/scripts/py_something.py "$1"Python脚本访问一些在线服务并生成3个新文件。它们归root所有。
那是为什么,以及我如何改变这种行为。我想成为那些产品文件的所有者
谢谢
发帖在询问Ubuntu之前-想尝试我的机会在这里,将在任何结果相互链接。
2在Bash脚本中包装Python脚本似乎很蹩脚,但否则我做不到
发布于 2011-11-10 08:32:39
创建的文件由root拥有,可能是因为您以root的身份运行incrontab,然后python通过bash从它继承。
您可以从您自己的用户中运行incrontab,只需在/etc/incron.low中添加您的用户名(允许您使用incron),然后用您的帐户使用"incrontab -e“重新创建incron表(不要忘记从root删除该条目)。
第二个选项(如果您不能修改incron.allow)是用用户名调用python。在bash脚本中,修改:
python /home/zetah/scripts/py_something.py "$1"在……里面
su <username> -c"python /home/zetah/scripts/py_something.py '$1'"希望能帮上忙
美洲c
https://stackoverflow.com/questions/7303339
复制相似问题