Python中文
首页
教程
问答
标签
搜索
登录
注册
使用Python和subproces.call但在Bash工作
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>这是我第一次在这里请求一些帮助,因为我更像是一个服务器故障的人。</p> <p>我正在用Python编写一些脚本,到目前为止,我一直很喜欢这种语言,但是我有一个小问题,就是让我的脚本无法工作。在</p> <p>下面是有问题的代码行:</p> <pre><code>subprocess.call('xen-create-image --hostname '+nom+' --memory '+memory+' --partitions=/root/scripts/part.tmp --ip '+ip+' --netmask '+netmask+' --gateway '+gateway+' --passwd',shell=True) </code></pre> <p>我也试过同样的方法os.popen公司. 所有变量设置正确。在</p> <p>当我在我的常规Linux shell中执行有问题的命令时,它工作得非常好,但是当我使用Python脚本执行它时,会出现一些奇怪的错误。我甚至换了subprocess.call()以确保我使用的是命令的精确输出。在</p> <p>我研究了我的shell的环境变量,但是它们几乎是一样的。。。我会贴出我得到的错误,但我不确定它是否与我的问题有关。在</p> <blockquote> <p>Use of uninitialized value $lines[0] in substitution (s///) at /usr/share/perl5/Config/IniFiles.pm line 614. Use of uninitialized value $_ in pattern match (m//) at /usr/share/perl5/Config/IniFiles.pm line 628.</p> </blockquote> <p>我不是Python专家,所以我很可能遗漏了一些东西。在</p> <p>提前感谢您的帮助</p> <p>安托万</p> <hr/> <p><strong>编辑</strong></p> <p>按照miax的建议,我不再使用shell=True。相反,我查看了<a href="http://docs.python.org/library/subprocess.html" rel="nofollow noreferrer">subprocess</a>的Python文档,并使用了以下代码:</p> ^{pr2}$ <p>可悲的是,这并没有改变任何东西。。。在</p> <hr/> <p><strong>编辑2</strong></p> <p>我已经使用了miax给出的提示,但我仍然得到上面的错误。。。这是我用过的代码。在</p> <pre><code>cmd = ['xen-create-image', '--hostname', nom, '--memory', memory, '--partitions=/root/scripts/part.tmp', '--ip', ip, '--netmask', netmask, '--gateway', gateway, '--passwd'] subprocess.call(cmd) </code></pre> <p>这真的很奇怪。。。当我在常规shell中运行这个命令时,这个命令可以正常工作。。。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p><code>xen-create-image</code>脚本是否以hashbang开头?也就是说,第一行是不是有点像</p> <pre><code>#!/bin/sh </code></pre> <p>是吗?这是需要检查的一件事。另一种方法是,您可以尝试将命令调用为:</p> ^{pr2}$ <p>您可能需要打印<code>cmd</code>来验证这是您要运行的命令(即检查替换)。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在PyObj中使用respondsToSelector和performSelector
2 回答
如何在pyobj中停止线程
10 回答
如何在pyobj中生成线程
10 回答
如何在pyodbc中为记录集指定游标类型?
5 回答
如何在pyodbc中从用户处获取表名,同时避免SQL注入?
10 回答
如何在pyodbc中使用executemany运行多个SELECT查询
10 回答
如何在pyodbc中同时在n个游标上并行运行n个进程?
4 回答
如何在pyodbc中控制连接池的大小?
7 回答
如何在pyodbc中自动调用fetchall()而不进行异常处理?
5 回答
如何在pyODBC查询中参数化日期戳?
2 回答
如何在pyodbc输出转换器函数中解压sqlserver DATETIME?
3 回答
如何在pyodb中安装所有驱动程序
6 回答
如何在pyodb嵌套循环中调用不同的查询
3 回答
如何在pyomo.environ公司modu装置
10 回答
如何在Pyomoconstraints中建模逻辑或量词
3 回答
如何在Pyomo中为约束使用数组
2 回答
如何在pyomo中使用集和范围集的多级索引?
4 回答
如何在PYOMO中分配伪二进制变量
1 回答
如何在Pyomo中创建OR约束?
2 回答
如何在Pyomo中动态地将变量添加到列表中?
10 回答