Python论坛  - 讨论区

标题:python里面能运行perl程序么?

2015年09月16日 星期三 09:04

import subprocess

 

subprocess.call(["/home/test/lx/logDayStat.pl /root/autotest/integrity_data_AH_CMCC/logs"])

 

这个提示报错 

2015年09月16日 星期三 10:20

试试这个,

var
= "/some/file/path/" pipe = subprocess.Popen(["perl", "./uireplace.pl", var], stdin=subprocess.PIPE) pipe.stdin.write(var) pipe.stdin.close()

2015年09月18日 星期五 13:15

import subprocess

subprocess.call(["/home/test/lx/logDayStat.pl", "/root/autotest/integrity_data_AH_CMCC/logs"])

# or
subprocess.call("/home/test/lx/logDayStat.pl /root/autotest/integrity_data_AH_CMCC/logs", shell=True)

如果还是不行,应该是漏了 chmod +x /home/test/lx/logDayStat.pl

2015年09月19日 星期六 05:40

import commands

commands.getoutput('xxxx')

==================

import os

os.system('xxx')

2015年09月23日 星期三 11:41

 

makestr为.pl 参数目录

pipe = subprocess.Popen(["perl", "./logDayStatpiclx.pl", makestr,5], stdin=subprocess.PIPE)

pipe.stdin.write(makestr)

pipe.stdin.close()

报错如下:
Traceback (most recent call last):
  File "testpy.py", line 16, in <module>
    pipe = subprocess.Popen(["perl", "./logDayStatpiclx.pl", makestr,5], stdin=subprocess.PIPE)
  File "/usr/lib64/python2.6/subprocess.py", line 642, in __init__
    errread, errwrite)
  File "/usr/lib64/python2.6/subprocess.py", line 1234, in _execute_child
    raise child_exception
TypeError: execv() arg 2 must contain only strings

2015年09月23日 星期三 13:17

5 ==> "5"

参数只能是字符串。

>> pipe.stdin.write(makestr)

这里想做什么操作?makestr是干嘛用的?

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号