
Ich habe eine Sammlung von Dateien aus vielen Systemen in meinem Unternehmen in einem Store-Verzeichnis (/store/) und wollte alle Passwd-Dateien finden und sie in einer einzigen Datei zusammenfassen. Intuitiv habe ich mir den folgenden Befehl ausgedacht und verwende ihn:
find /store/ -name passwd -type f -exec cat {} + > all_passwds.txt
Dies sammelt aber auch die /etc/passwd-Datei, die aus Binärdateien besteht (ich gehe davon aus, dass einige Systeme symbolische Links zu Busybox oder so herstellen). Ich möchte wirklich nur textbasierte Passwd-Dateien.
Mein nächster Gedanke ist, dass ich vielleicht alle /etc/passwd-Dateien finden und Regex-Übereinstimmungen abrufen könnte. Ich habe ein paar Stunden lang versucht, einen Regex zu erstellen, der dem Passwd-Format entspricht.
Für jede Hilfe beim Erstellen eines regulären Ausdrucks, der mit /etc/passwd-Dateien übereinstimmt, oder dabei, sicherzustellen, dass der obige Befehl nur Text-Passwd-Dateien erfasst, wäre ich sehr dankbar ...