Wie findet man Dateien, deren Inhalt ODER Pfad eine Zeichenfolge enthält?

Wie findet man Dateien, deren Inhalt ODER Pfad eine Zeichenfolge enthält?

Find und grep funktionieren meines Wissens nach nicht, da ich eine Liste von Dateien erstellen muss, die EINE der Anforderungen erfüllen, nicht beide. Ich nehme an, dafür ist mehr als ein Einzeiler erforderlich. Irgendwelche Vorschläge?

Antwort1

Dies ist mit dem folgenden Befehl möglich:

comm  -3 <(find path -name '*string*' | sort) \
         <( grep -r 'string' path | sed s=^=./= | sort) 

Möglicherweise müssen Sie den sedTeil ändern, damit die von gemeldeten Pfade kompatibel findsind grep. Der -3Schalter communterdrückt das Drucken der Dateien, die in beiden Listen erscheinen.

verwandte Informationen