为什么这个简单的python脚本不打印真正的redhat版本?
version = os.system( ' cat /etc/redhat-release | awk \'{print $7}\' ' )
print ("my version is " ,version)
Run Code Online (Sandbox Code Playgroud)
当我运行它时
我们有:
7.2
('my version is ', 0)
Run Code Online (Sandbox Code Playgroud)
ilk*_*chu 11
os.system()只运行进程,它不捕获输出:
如果命令生成任何输出,它将被发送到解释器标准输出流。
返回值是进程的退出代码:
在 Unix 上,返回值是以为 wait() 指定的格式编码的进程的退出状态。
您需要使用类似subprocess.check_output()或subprocess.Popen()直接来捕获输出。
>>> arch = subprocess.check_output("uname -a | awk '{print $9}'", shell=True);
>>> arch
'x86_64\n'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91903 次 |
| 最近记录: |