Python目录walk文件解析脚本语法错误

时间:2015-11-24 19:26:00

标签: python file parsing os.walk

我有一个基本脚本,我想检查每个目录,子目录和以root开头的文件,如果文件以.sh结尾,它应该解析文件中的字符串。这是代码:

for root, dirs, files in os.walk("/"):
    for file in files:
        if file.endswith(".sh"):
            for line open(file):
                if "data in on" in line:
                    print(os.path.join(root, file))

它在扔:

for line open(file):
            ^
SyntaxError: invalid syntax

我认为问题在于“文件”,但我不完全确定,因为我认为我可以将文件用作变量。任何见解都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您需要传递完整路径open

for root, dirs, files in os.walk("/"):
    for file in files:
        if file.endswith(".sh"):
            path = os.path.join(root, file)
            for line in open(path):
                if "data in on" in line:
                    print(path)