从一个文本文件中获取输入并在另一个上搜索

时间:2014-10-22 08:21:56

标签: python python-2.7

我的部分脚本会ping PC,如果它们关闭,请将其名称写入txt文件。然后我需要做的是在另一个txt文件中搜索该PC名称(从我们的DHCP服务器导出)并找到它的mac地址,然后我可以用它来做其他事情。这个搜索部分导致了我的问题 - 它可能只是一个语法问题,但我无法通过第一个txt文件和其中的每个条目,搜索第二个txt文件并获取我需要的信息。

这是我到目前为止所拥有的:

            with open (r"PCs_off.txt") as file:
            lines = []
            for line in file:
                line = line.strip()
                pcName = line
                with open("dhcp-dump.txt", "r") as search:
                    for lines in search:
                        if pcName in lines:
                            lines_split = lines.rstrip("\n").split('\t')
                            mac = lines_split[4]
                            print mac
                            print pcName

(原谅标签,它只是脚本的这一部分位于更大的脚本中间。) 我认为问题在于if pcName in lines:行 - 如果我在那里指定一个PC的名称,它会搜索并完美地工作,但是我需要它来搜索上面的PC名称文件。

我希望这一切都有意义......

略有不同; for line in file行,它实际上是否必须被称为' line'或者我可以称之为其他什么?我只是因为称它为“线条”而问。似乎也有用......

1 个答案:

答案 0 :(得分:0)

我尝试了与你的样品完全相同的样品,效果很好。你可以尝试调试一下pcName变量吗?在print '<', pcName, '>'行下添加pcName = line:我想知道你得到的pcName是否与你期望的一样......