直接运行是没有问题的,我在155的机器上crontab运行也是没有问题的,然后在构建机上crontab运行脚本就不行了,我跟了下程序,发现是调用svn这个地方什么也没有获得,代码如下:
测试发现,只能通过os.getcwd()得到目录,这个地方是正确的,而后面的svn info得到的输出结果则为空,好诡异呀。
刚才补充测试了下,直接添加一个ls命令,发现调用后都没能正确运行,问题更加明确了,这里os.popen(cmd).read()没有被正确调用。问题越来越显而易见啦
直接运行是没有问题的,我在155的机器上crontab运行也是没有问题的,然后在构建机上crontab运行脚本就不行了,我跟了下程序,发现是调用svn这个地方什么也没有获得,代码如下:
测试发现,只能通过os.getcwd()得到目录,这个地方是正确的,而后面的svn info得到的输出结果则为空,好诡异呀。
刚才补充测试了下,直接添加一个ls命令,发现调用后都没能正确运行,问题更加明确了,这里os.popen(cmd).read()没有被正确调用。问题越来越显而易见啦
7 回答5.3k 阅读
4 回答4.4k 阅读✓ 已解决
4 回答4k 阅读
4 回答3.8k 阅读✓ 已解决
2 回答5.9k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
svn改成命令的绝对路径,再试试,另外最好使用subprocess来执行系统命令,这个论坛上前几天还有一篇文章说os执行命令的坑呢