使用python执行linux命令

Posted

技术标签:

【中文标题】使用python执行linux命令【英文标题】:execute a linux command using python 【发布时间】:2017-07-30 22:56:50 【问题描述】:

问题陈述: 使用 python 在 oracle linux 7 中安装软件包的脚本

场景: 我有一个文本文件“oracle_package-requirement.txt”-> 包含包名称 我正在使用以下程序使用以下代码将其附加到列表类型变量:

!/usr/bin/env python

导入操作系统 f = open("/home/dipesh/oracle_package_requirement.txt","r") 我的列表 = [] 对于 f 中的行: myList.append(line)

现在我想将 myList 作为输入传递给 yum -y install

所以我向社区提出的问题是如何在我的 python 代码中编写这个????

【问题讨论】:

Execute command on linux terminal using subprocess in python的可能重复 【参考方案1】:

您可以使用子流程模块:

import os
import subprocess

f = open("/home/dipesh/oracle_package_requirement.txt","r")
myList = []
for line in f:
  myList.append(line.strip()) # strip to get rid of trailing newline
subprocess.check_call(['yum', '-y', 'install'] + myList)

【讨论】:

@Mushir 来自命令模块文档:“自 2.6 版起已弃用:命令模块已在 Python 3 中删除。改用子进程模块。”

以上是关于使用python执行linux命令的主要内容,如果未能解决你的问题,请参考以下文章

为啥python3不能执行一些linux命令?

需要编写python脚本在cygwin中执行linux命令[关闭]

linux使用Python上ssh远程执行shell命令

Python远程linux执行命令

python 脚本怎么执行linux命令

python 在linux 中执行grep 命令