首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python脚本不适用于incron

python脚本不适用于incron
EN

Stack Overflow用户
提问于 2012-04-27 17:19:52
回答 2查看 933关注 0票数 0
代码语言:javascript
复制
incrontab -e
/home/owen/file_to_be IN_ALL_EVENTS /home/owen/abc.py 

owen@desktop:~$ cat abc.py 
#!/usr/bin/env python
# -*- coding: utf-8 -*-
p = open('file_to_test', 'a+')
p.write("test")
p.close()

owen@desktop:~$ ll file_to_test file_to_be 
-rw-r--r-- 1 owen owen 32 2012-04-27 17:07 file_to_be
-rw-r--r-- 1 owen owen 60 2012-04-27 17:07 file_to_test

owen@desktop:~$ echo "a" >> file_to_be 
owen@desktop:~$ ll file_to_test file_to_be 
-rw-r--r-- 1 owen owen 34 2012-04-27 17:15 file_to_be
-rw-r--r-- 1 owen owen 60 2012-04-27 17:07 file_to_test


owen@desktop:~$ tail -n 3 /var/log/syslog
Apr 27 17:15:01 owen1 CRON[12003]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Apr 27 17:15:10 owen1 incrond[11574]: table for user owen changed, reloading
Apr 27 17:15:18 owen1 incrond[11574]: (owen) CMD (/home/owen/abc.py)

incron似乎已经被触发了

但是python脚本并没有像预期的那样工作。

有人知道为什么吗?

如果我执行abc.py,它会正确地将"test“附加到文件中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-27 17:44:53

也许脚本在起作用,但不是你所期望的那样……将脚本生成的文件的完整路径放入,即:

代码语言:javascript
复制
 #!/usr/bin/env python
 # -*- coding: utf-8 -*-
 p = open('/tmp/file_to_test', 'a+')
 p.write("test")
 p.close()

然后检查是否生成了文件'/tmp/ file _ to _test‘,问题可能是使用incron运行脚本的环境。

票数 3
EN

Stack Overflow用户

发布于 2012-04-27 17:24:07

您的脚本似乎不是可执行的,您需要使用chmod使其可执行(chmod +x abc.py)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10348038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档