Python 2.7 将变量传递到子进程命令行

标签 python bash python-2.7 shell variables

我想使用一个变量并将其传递到 shell 命令行。问题是。我不知道怎么办。需要帮忙。

 def gauti():
    imti=tekstas.get("1.0", "end-1c")
    subprocess.call("grep -i 'imti' /var/log/syslog > logas.txt", shell=True)

我需要一个在 python 程序中传递的变量,而不是“imti”,以便在系统日志文件中搜索。

最佳答案

使用字符串格式

subprocess.call("grep -i '{imti}' /var/log/syslog > logas.txt".format(imti=imti), 
                shell=True)

或将数组传递给包含所有必需部分的调用方法

logas = open('logas.txt', 'a+')
subprocess.call(['grep', '-i', imti, '/var/log/syslog'], stdout=logas)

关于Python 2.7 将变量传递到子进程命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43095640/

相关文章:

python - 如何在 Sympy 的矩阵运算中组合多项式?

python - 用于提取两个已知 div 之间的所有内容的 Xpath

javascript - 这是在 GitHub Pages 上实现博客功能的好方法吗?

linux - 如何制作 ubuntu 可执行文件并在我的安装文件中运行它

python - 如何从 Python 3 导入 FileNotFoundError?

python:扩展的ASCII码

linux - 为什么许多 init.d 脚本以 "exit $?"结尾?

bash - 如何将一个文件连接到多个文件?

Python 和正则表达式

python - 从 pandas DataFrame 中提取对的最佳方法