python 在linux 中执行grep 命令
使用python在linux执行grep命令:ps-ef|grep"loop"|wc-limportos,sys,subprocessoutput=subprocess....
使用python 在linux 执行grep 命令: ps -ef | grep "loop" | wc -l
import os,sys,subprocess
output=subprocess.call([' ps -ef | grep "loop" | wc -l'],shell=True);
print output
output 返回值为 14
但是在linux中执行 ps -ef | grep "loop" | wc -l 这条命令返回值为:13 ,
请问:为什么相同的命令在python 中执行结果会 +1 ?
如何写能获取到正确的返回值呢? 展开
import os,sys,subprocess
output=subprocess.call([' ps -ef | grep "loop" | wc -l'],shell=True);
print output
output 返回值为 14
但是在linux中执行 ps -ef | grep "loop" | wc -l 这条命令返回值为:13 ,
请问:为什么相同的命令在python 中执行结果会 +1 ?
如何写能获取到正确的返回值呢? 展开
展开全部
下面的函数封装了系统的grep功能,传递文件名和参数返回grep的结果
import subprocess
def grep(filename, arg):
process = subprocess.Popen(['grep', '-n', arg, filename], stdout=subprocess.PIPE)
stdout, stderr = process.communicate()
return stdout, stderr
import subprocess
def grep(filename, arg):
process = subprocess.Popen(['grep', '-n', arg, filename], stdout=subprocess.PIPE)
stdout, stderr = process.communicate()
return stdout, stderr
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
两个都对,可能是你执行的时间不同。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询