在目录中的每个文件中查找主机名

时间:2016-12-13 17:08:17

标签: python python-2.7 file-io

我正在尝试找到一种方法来读取目录中的每个文件,并从每个文件中返回主机名。

我已经使用指定的一个文件,但现在我正在尝试在整个目录而不是单个文件上执行此操作。到目前为止,我有以下内容,但我收到了错误。

IOError: [Errno 2] No such file or directory: "Return first filename in the directory"

代码:

import os
for filename in os.listdir(TEST_PATH):
    with open(filename) as in_file:
        for line in in_file:
            match = re.search('^hostname\s(\S+)$', line)
            if match:
                print match.group(1)

1 个答案:

答案 0 :(得分:0)

我想我找到了答案。我不得不追加文件名和路径。有一个更好的方法吗?我确信有,任何帮助都会受到赞赏。

import os
for filename in os.listdir(TEST_PATH):
    file_name = os.path.join(TEST_PATH, filename)
    with open(file_name, "r+") as in_file:
        for line in in_file:
            match = re.search('^hostname\s(\S+)$', line)
            if match:
                print match.group(1)