【发布时间】:2015-08-20 14:43:12
【问题描述】:
第一次发帖,有点菜鸟,所以如果礼仪或格式有任何问题,请告诉我。
我正在尝试对文件(下图)使用 grep 函数来检查文件中是否存在单词。当我查看文件时,这个词肯定存在。它被空格包围,是一行中的最后一个单词。
由于某种原因,grep 找不到单词,程序返回 0。为什么?
谢谢!
import os
import re
word = "aliows"
folder = '/Users/jordanfreedman/Thinkful/Projects/Spam_Filter/enron1/spam/'
email = '4201.2005-04-05.GP.spam.txt'
number = int(os.popen("grep -w -i -l " + word + " " + folder + email + " | wc -l").read())
print number
【问题讨论】:
-
您是否只是想获取
word在文本文件中出现的次数? -
在命令行上运行
grep命令会发生什么? -
如果您在 shell 中手动运行该命令,它会起作用吗?你可以
grep获取该行的其他内容并将输出传输到xxd或hexdump吗? -
问题出在管道上。
popen无法识别管道,因此|被视为单个参数,这不是有意的。 -
@IanAuld 只是想看看这个词是否存在于文件中