我读过一些关于此的文章,但我无法在其中找到帮助。
我有一个使用 smtplib 发送邮件的 python 脚本。从命令行调用时它会起作用。
I have #!/usr/bin/python
作为第一行,并且可以使用以下命令运行它/home/pi/ipsender.py
and python /home/pi/ipsender.py
.
我的 crontab 是*/1 * * * * /home/pi/ipsender.py
但我也尝试过*/1 * * * * python /home/pi/ipsender.py
and */1 * * * * /usr/bin/python /home/pi/ipsender.py
.
Doing which python
I get /usr/bin/pyhton
从命令行运行 python 我可以导入并使用 smtplib 就可以了。
In /var/log/syslog
I get:
Nov 27 22:57:01 raspberrypi /USR/SBIN/CRON[3764]: (pi) CMD (python /home/pi/ipsender.py)
Nov 27 22:57:01 raspberrypi /USR/SBIN/CRON[3763]: (CRON) info (No MTA installed, discarding output)
我猜 No MTA... 只是 Cron 不发送有关其正在执行的操作的电子邮件,或者不是吗?
我如何运行这个脚本。
[Edit]
脚本的权限是
-rwxr-xr-x 1 pi pi 551 Nov 27 22:37 ipsender.py
[编辑2]
使用 D Read 的提示我得到以下日志
starting
Traceback (most recent call last):
File "/home/pi/ipsender.py", line 7, in <module>
ifconfig_output = sp.check_output(["ifconfig", "wwan0"])
File "/usr/lib/python2.7/subprocess.py", line 537, in check_output
process = Popen(stdout=PIPE, *popenargs, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
向我暗示路径有问题。虽然在/etc/crontab
I have PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
and which ifconfig
gives /sbin/ifconfig
。所以这应该不是问题吧?