python + 使用变量运行系统命令

mai*_*ash 0 python linux python-2.4

我需要从 python 运行系统命令

我有 python - 版本 - Python 2.4.3

我尝试以下操作,在本例中为ls -ltr | 八月

#!/usr/bin/python


import commands


Month = "Aug"
status,output = commands.getstatusoutput(" ls -ltr | grep Month "  )
print output
Run Code Online (Sandbox Code Playgroud)

如何在命令中插入 Month 变量?

所以grep会这样做

  | grep Aug
Run Code Online (Sandbox Code Playgroud)

我也试试这个

status,output = commands.getstatusoutput( " ls -ltr | grep {} ".format(Month) )
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误

Traceback (most recent call last):
   File "./stamm.py", line 14, in ?
    status,output = commands.getstatusoutput( " ls -ltr | grep {}     ".format(Month) )
AttributeError: 'str' object has no attribute 'format'
Run Code Online (Sandbox Code Playgroud)

hei*_*nst 6

import commands


Month = "Aug"
status,output = commands.getstatusoutput(" ls -ltr | grep '" + Month + "'")
print output
Run Code Online (Sandbox Code Playgroud)

或者其他一些可能性是:

status,output = commands.getstatusoutput("ls -ltr | grep '%s'" % Month)
Run Code Online (Sandbox Code Playgroud)

或者

status,output = commands.getstatusoutput(" ls -ltr | grep \"" + Month + "\"")
Run Code Online (Sandbox Code Playgroud)