我有以下输入文件“testFile.txt”:
$ cat testFile.txt
111 // mNx
222 // mNy not nMx
333 // mNz also not nMx
$ grep mNx testFile.txt
111 // mNx
222 // mNy not mNx
333 // mNz also not mNx
然而
$ grep "// mNx" testFile.txt
111 // mNx
好的,到目前为止还不错,但我想使用Python调用grep。从以下位置开始
this post
我有
from subprocess import Popen, PIPE
def grep1(inFile, string):
COMMAND = 'grep %s %s' % (string, inFile)
process = Popen(COMMAND, shell=True, stderr=PIPE, stdout=PIPE)
output, errors = process.communicate()
return output
mNx = grep1('testFile.txt', 'mNx')
print mNx
这给了
111 // mNx
222 // mNy not mNx
333 // mNz also not mNx
mNx = grep1('testFile.txt', '// mNx')
它返回以下内容:
testFile.txt:111 // mNx
testFile.txt:222 // mNy not mNx
testFile.txt:333 // mNz also not mNx
我试过了
"\/\/ mNx"
r"// mNx"
r"\/\/ mNx"
等,但无法复制本机
grep
行为在我的Python字符串中是否有转义?怎么回事?