利用python語句執行終端命令os.sys('cmd')&&os.popen('cmd')
應用場景:在python文件中執行shell/終端命令
兩種方法:
import os
- os.sys('cmd')
- file_object = os.popen('cmd')
兩者區別:
- os.sys('cmd') 執行成功返回0,失敗返回1,命令不存在報錯;
- os.popen('cmd') 執行成功返回 返回文件對象,文件內容是命令行的執行結果
- os.system 調用系統命令,完成后退出,返回結果是命令執行狀態,一般是0;
- os.popen 可以實現一個“管道”,從這個命令獲取的值可以在python中繼續被使用;
os.popen使用語法如下:
cmd_result = os.popen('CMD').readlines()[0]
或者
cmd_result = os.popen('cat /proc/cpuinfo').read()
或則
for line in os.popen('cat /proc/cpuinfo'):
print(line)
Demo:
# -*- coding: utf-8 -*-
import os
import re
# 執行jmeter腳本
cmd = "~/uctest/apache-jmeter-2.11/bin/jmeter -n -t ~/uctest/jmx/UC_ORG.jmx"
tmp = os.popen(cmd).read()
print(tmp)
# 輸出執行結果
regex = re.compile('summary = .*?\(0.00%\)', re.S)
result = re.findall(regex, tmp)
if len(result) > 0:
print("successed")
exit(0)
else:
print("failed")
exit(1)