BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #14643同步于 2016/6/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

python shell互调导致主进程退出,how to 排查?

cccoco
2016/6/23镜像同步9 回复
# Situation - shell 包了一个python进程来执行 - python 进程在做什么? ``` for some situation: #bcp 不阻塞,扔给sqlserver去做文件导出 sql bcp queryout #shell 合并bcp导出的文件,有可能操作的时候sqlserver的bcp进程还在占用文件 shell merge bcp file shell remove merged file ``` - shell 在干什么? ``` python my_python.py echo "succeed!!!" ``` - 结果呢? - 为了看最终shell进程的状态,执行python之后调了个echo - python调用、外围shell调用都加了错误输出重定向 - 结果,python进程莫名退出了,shell进程也退出了,没有错误日志也没有打印最后的echo。。。 # Questions - 确实python调用shell合并文件并删除文件,会碰到文件还被windows进程占用的情况。but,为什么没有错误日志能refer。。。 - 如果shell成功了,最后一行echo为啥没有输出?如果失败了,错误日志呢??? - 或者,有其他方法能追到python进程或者shell进程的log?脚本又没有java之类的jstack能看跑到哪了。。。为什么卡了。。。 ## 新手求教!
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
nuanyangyang机器人#1 · 2016/6/23
说说你要做什么吧。感觉不需要这么麻烦。
cccoco机器人#2 · 2016/6/23
其实换种方法就能避过这个,但是就想知道为什么没有办法追溯错误原因。。。 【 在 nuanyangyang 的大作中提到: 】 : 说说你要做什么吧。感觉不需要这么麻烦。
nuanyangyang机器人#3 · 2016/6/23
可是你说了这么多也没说明白你想做什么事情,只是提到了python、shell、sql什么的,不知道你想达到什么目的。 既然不知道你想做什么事,也就没办法帮你找问题了。 【 在 cccoco 的大作中提到: 】 : 其实换种方法就能避过这个,但是就想知道为什么没有办法追溯错误原因。。。
FromSixToTen机器人#4 · 2016/6/24
对头,即想别人帮你,又不想跟别人坦诚相待。 【 在 nuanyangyang 的大作中提到: 】 : 可是你说了这么多也没说明白你想做什么事情,只是提到了python、shell、sql什么的,不知道你想达到什么目的。 : 既然不知道你想做什么事,也就没办法帮你找问题了。
cccoco机器人#5 · 2016/6/24
我丢,这上升到什么level了?没毛病? 【 在 FromSixToTen 的大作中提到: 】 : 对头,即想别人帮你,又不想跟别人坦诚相待。
cccoco机器人#6 · 2016/6/24
我想做的是: 1. python调用dbapi从数据库导出数据到文件 2. 基于某种规则在导出后做文件合并 我的问题: 1. 跟我想做的其实没什么关系,就是想知道为什么python进程也好shell进程也好,出错了为什么没有错误输出。。。 2. 我的重定向没问题,因为有正常打log的时间,只是打着打着进程就退出了,没什么错误信息能追 【 在 nuanyangyang 的大作中提到: 】 : 可是你说了这么多也没说明白你想做什么事情,只是提到了python、shell、sql什么的,不知道你想达到什么目的。 : 既然不知道你想做什么事,也就没办法帮你找问题了。
FromSixToTen机器人#7 · 2016/6/24
难得看到你问问题,而且暖神还回复你。 【 在 cccoco 的大作中提到: 】 : 我丢,这上升到什么level了?没毛病?
nuanyangyang机器人#8 · 2016/6/24
【 在 cccoco 的大作中提到: 】 : 我想做的是: : 1. python调用dbapi从数据库导出数据到文件 : 2. 基于某种规则在导出后做文件合并 : ................... 如果你说的都是对的,那么不应该出错。如果结果不是你期望的,肯定是哪一步出错了。通过你抽象的描述看不出具体问题。 建议python不要再调用shell了。所有的事情应该都可以在python里面做。降低复杂度,便于调试。
cccoco机器人#9 · 2016/6/24
嗯,谢谢!看来只能绕过了 【 在 nuanyangyang 的大作中提到: 】 : : 如果你说的都是对的,那么不应该出错。如果结果不是你期望的,肯定是哪一步出错了。通过你抽象的描述看不出具体问题。 : 建议python不要再调用shell了。所有的事情应该都可以在python里面做。降低复杂度,便于调试。