crontab -l
* * * * * python /Users/abc/Downloads/test.py
* * * * * say hello
/Users/abc/Downloads/test.py
#!/usr/bin/python
file = open('/Users/abc/Downloads/abc.txt','w')
file.write('aaaaaa')
file.close()
say hello 每分钟都能运行,但 python 的那行命令效果,换一台 mac 也试过一样无效,这个 python 脚本是我写着测试定时任务的,原先是在 python 脚本里写的的是请求 api 运行 shell 的命令。
1
misaka19000 2020-03-19 11:40:49 +08:00
把 python 修改为全限定路径再试一下呢
|
2
korvin OP @misaka19000 #1 /usr/bin/python /Users/abc/Downloads/test.py 这样吗?也试过,一样无效。
|
3
misaka19000 2020-03-19 11:46:09 +08:00
把 Python 命令放在一个 shell 脚本里面执行,看看 shell 脚本能否正常执行(比如执行一个 echo ),再看下 Python 执行的输出结果是什么,是否有报错
|
4
littleylv 2020-03-19 11:48:32 +08:00
首先看看 cron 的 log,有没执行到
|
5
korvin OP @misaka19000 #3
试过这样也不行 backup.sh ``` python /Users/abc/Downloads/test.[防 v2 屏蔽 ]py ``` crontab -l * * * * * /Users/abc/Downloads/backup.sh * * * * * say hello |
6
littleylv 2020-03-19 12:00:26 +08:00
@korvin #5 不是,你尝试直接在命令行执行 python /Users/abc/Downloads/test.[防 v2 屏蔽 ]py 试试
|
7
superrichman 2020-03-19 12:12:42 +08:00 via iPhone
可能是 cron 执行的时候没有环境变量 找不到 python ? 你把 python 路径写完整试试
或者写进 shell 脚本 |
8
korvin OP @littleylv #6 直接在终端运行这个是可以的,刚刚加日志输出
crontab -l * * * * * python /Users/abc/Downloads/abc.py >> /Users/abc/Downloads/log.log 2>&1 看到报错了 cat log.log /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: can't open file '/Users/abc/Downloads/abc.py': [Errno 1] Operation not permitted 修改文件权限 777 和脚本目录 777 还是不行 |
9
lazydog 2020-03-19 12:17:17 +08:00 via Android
似乎我也遇到了这个问题,更改 py 路径为相对和绝对都不行,后来就没然后了!😂
|
10
korvin OP @superrichman #7 找到报错信息了,不是 python 找不到,是操作不被允许,还没找到解决办法
/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: can't open file '/Users/abc/Downloads/abc[防屏蔽].py': [Errno 1] Operation not permitted |
11
korvin OP @lazydog #9 找到报错了,但还没解决
/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: can't open file '/Users/abc/Downloads/abc[防屏蔽].py': [Errno 1] Operation not permitted |
12
cz5424 2020-03-19 12:33:38 +08:00
记得 macos 的 Downloads 需要授权,你扔别的地方试试
|
13
korvin OP @cz5424 #12 果然是,换目录可以了,我还以为 Downloads 是权限最不敏感的一个目录呢
@lazydog #9 @superrichman #7 @littleylv #6 @misaka19000 #3 解决了,换目录 |
14
lazydog 2020-03-19 22:48:13 +08:00 via Android
OK,我去试一试!感谢~
|
15
kojirou 2020-03-20 00:08:39 +08:00
隐私设置里有一个完全磁盘访问权限,加个 python
|