子流程.教皇问题

我正在尝试修改一个编程示例,我想到了 两个问题...首先是我似乎无法传递 对外部命令的论点(我已经能够做到这一点 旧模块和CMD是我想尝试的命令)所有输出 似乎返回为一行(至少在我运行程序中 SPE). 导入子过程 从OS导入系统 cmd =""" gawk -f altertime.awk -v time_offset = 4 -V outfile =" testdat.sco"" i1.sco"""" #subprocess.popen. last_line = subprocess.popen(['gawk.exe'], stdout = subprocess.pipe).communicate()[0] xx = 0 对于last_line中的行: xx = xx + 1 如果xx <2: 打印行 打印str(xx)

# 回答1

恩星期三,2007年6月20日12:27:47 -0300,ertheide*******@msn.com
# 回答2

6月20日,下午1:46," Gabriel Genellina" 写道: 您构建似乎是所需的命令行,但执行 gawk.exe而不是. 最好事先拆分论点: cmd = [" gawk"," -f"," altertime.awk"," -v"," time_offset = 4"," -v", " outfile = testdat.sco"," i1.sco"] 现在,您想对输出做什么? 按线打印IT? output = subprocess.popen(cmd,stdout = subprocess.pipe).communicate()[0] 线= output.splitlines() 对于行中的行: 打印行 - - Gabriel Genellina 我进行了一次测试,我的CMD代替了Gawk,而一切都是 代替Gawk ..我还没有尝试过您列出的内容(我是 准备上班,所以可能必须等到明天才能尝试 它)感谢您的帮助
# 回答3

6月20日,下午1:46," Gabriel Genellina" 写道: 您构建似乎是所需的命令行,但执行 gawk.exe而不是. 最好事先拆分论点: cmd = [" gawk"," -f"," altertime.awk"," -v"," time_offset = 4"," -v", " outfile = testdat.sco"," i1.sco"] 现在,您想对输出做什么? 按线打印IT? output = subprocess.popen(cmd,stdout = subprocess.pipe).communicate()[0] 线= output.splitlines() 对于行中的行: 打印行 - - Gabriel Genellina C:\ dex_tracker \ pipe1.py Trackback(最近的最新电话): 文件" c:\ dex_tracker \ pipe1.py",第14行,in last_line = subprocess.popen([cmd],, stdout = subprocess.pipe).communicate()[0] 文件" c:\ python25 \ lib \ subprocess.py",第593行,in __init__ errread,errwrite) 文件" c:\ python25 \ lib \ subprocess.py",第793行,在_execute_child中 startupinfo) WindowsError:[错误2]系统无法找到指定的文件 脚本终止. 我可以写出来 作为批处理文件,然后运行它,但这是一个混乱的文件 hack ..
# 回答4

恩星期三,2007年6月20日20:02:52 -0300,ertheide*******@msn.com
# 回答5

6月20日,晚上7:50," Gabriel Genellina" 写道: 如果CMD是上述参数列表,则应使用 subprocess.popen(cmd,...)(如上所述). - - Gabriel Genellina-隐藏引用文本 - - 显示引号文字 - 我剪切并粘贴了一个示例以获取错误...可能是 MS Windows的问题??? (我在图书馆计算机工作 这样就结束了我的测试)
# 回答6

恩星期三,2007年6月20日22:28:06 -0300,ertydeighte@msn.com
# 回答7

在6月21日,上午1:22," Gabriel Genellina" 写道: 注意呼叫subprocess.popen-是第一个参数[CMD]还是CMD? 印刷reter(CMD)您会得到什么? 您在那台机器上也安装了gawk吗? - - Gabriel Genellina-隐藏引用文本 - - 显示引号文字 - Gawk是安装的..当我只打电话给gawk时,我会得到所有的一切 与之使用的选项,但是当我尝试使用这些选项的那一刻 我有问题. 我已经用批处理文件完成了 必须写出批处理文件,然后运行批处理文件. 似乎 像我应该使用命令的选项要多的工作要多 线程序..我在其他情况下使用OS.startfile和 其他情况并希望修复它.
# 回答8

En Fri,2007年6月22日01:05:36 -0300,ertheighte@msn.com
# 回答9

6月22日,12:10 AM," Gabriel Genellina" 写道: 好的,但是请检查 * popopen的参数是什么. 如果CMD为 *列表 * 如此消息上的第一句话所示,您应该致电 subprocess.popen(cmd,...),如该消息的第三行所示,但是 您的追溯表明您正在使用popen([cmd],...) 你能看到区别么? - - Gabriel Genellina-隐藏引用文本 - - 显示引号文字 - 当我运行它并保存结果时,我似乎使它有效 在SPE中注意到它的空间正确,但是当我将其保存到一个 文件我可以在WordPad中打开它,只有一行. 当我打开 在Winxound(CSOUND编辑器)中,它是双间隔的. 如果我在 批处理文件,输出文件的间距正确. 它给我一个注册者作为输出.我需要 做某事,或者我可以做一些事情以将线路充电器结束 输出??
# 回答10

En Fri,2007年6月22日10:08:49 -0300,ertheide*******@msn.com
# 回答11

6月23日,上午5:35," Gabriel Genellina" 写道: 尝试 打印reter(your_data) 确切地看看你得到的. - - Gabriel Genellina 您是否考虑到Windows上的行结尾为'\ r \ n'和 不是'\ n'? 斯塔尼 -http://pythonide.stani.be
# 回答12

在6月23日,6:46 AM,SPE- Stani的Python编辑

标签: python

添加新评论