在while循环中使用grep

时间:2016-09-16 19:13:30

标签: bash loops while-loop grep

我对此很陌生,所以我想我犯了一个相当简单的错误,或者可能以完全错误的方式解决它。

我试图识别我的第一个文件中的哪些行出现在另一个文件的列表中。

File1的格式为:

/dira/FileName1.txt
/dirb/FileName2.txt
/dirc/FileName3.txt
/dird/FileName4.txt
/dire/FileName5.txt
/dirf/FileName6.txt

文件2的格式为:

while read LINE; do grep $LINE listOfFiles2.txt ; done<listOfFiles1.txt

我试图运行的简单循环:

$ echo $LINE
FileName6

问题:

没有返回任何内容。但是,如果我完成并检查LINE的最后一个值是什么

$  grep $LINE listOfFiles2.txt
/dirf/FileName6.txt

这是有道理的。此外,我可以在循环中运行命令并接收预期的输出。

class BinarySearchTree(object):
    # snipped
    def _insert(self, key, val):
        prevNode = None
        currentNode = self.root
        while currentNode:
            prevNode = currentNode
            if key < currentNode.key:
                currentNode = currentNode.leftChild
            else:
                currentNode = currentNode.rightChild

        if key < prevNode.key:                      
            prevNode.leftChild = self.Node(key, val, parent=prevNode)
            self.updateNodeProperties(prevNode.leftChild)            
        else:                                       
            prevNode.rightChild = self.Node(key, val, parent=prevNode)
            self.updateNodeProperties(prevNode.rightChild)
    # snipped                

我想我错过了一些东西,但我的搜索还没有给我答案。

你们有没有人指出我正确的方向?

谢谢!

0 个答案:

没有答案