Ich bin Anfänger in Linux und möchte nach allen .conf
Dateien in suchen /etc/
.
Ich habe es versucht grep -r *.conf /etc
, aber das Ergebnis stimmt nicht.
Was mache ich falsch?
Ich bin Anfänger in Linux und möchte nach allen .conf
Dateien in suchen /etc/
.
Ich habe es versucht grep -r *.conf /etc
, aber das Ergebnis stimmt nicht.
Was mache ich falsch?
Antworten:
Drücken Sie einfach Ctrl+ Alt+ Tauf Ihrer Tastatur, um das Terminal zu öffnen. Führen Sie beim Öffnen den folgenden Befehl aus:
find . -type f -name "*.txt"
Dadurch werden alle Dateien mit der Erweiterung aufgelistet .txt
.
Das .
am Anfang kennzeichnet das aktuelle Verzeichnis. find
sucht rekursiv in allen Verzeichnissen unter dem angegebenen Pfad. Wenn die Suche nicht im aktuellen Arbeitsverzeichnis beginnen soll, geben Sie den Pfad an. Beispiel:
find /etc -type f -name "*.conf"
Dadurch werden das /etc
Verzeichnis und alle seine Unterverzeichnisse nach regulären Dateien mit der .conf
Erweiterung durchsucht .
find
ist so weit verbreitet, so gut dokumentiert und hat so viele StackOverflow / Exchange-Posts, dass es schwieriger ist, etwas zu finden, mit dem man leichter arbeiten kann. Fast alles, was Sie tun möchten, wurde irgendwo online geschrieben.
Ich würde persönlich verwenden find
, aber Sie können auch für diese Dinge glob:
shopt -s globstar
ls /etc/{,**/}*.conf
Sie können locate verwenden und es ist schnell, aber nicht zuverlässig.
locate '/etc/**.conf'
locate
zuverlässig?
locate
verlässt sich darauf, dass die mlocate-Datenbank kürzlich aktualisiert wurde, um genau zu sein. Standardmäßig ist die Aktualisierung nur einmal am Tag geplant (obwohl Sie sie mit manuell erzwingen können updatedb
).
grep
durchsucht den Inhalt von Dateien, nicht die Dateinamen.
So finden Sie alle .conf
Dateien in /etc/
:
find /etc -name "*.conf"
Der Befehl find ist langsam. Mit diesem Befehl erhalten Sie sofort ein Ergebnis:
locate "/etc/*.conf"
Weitere Informationen zum locate
Befehl (im mlocate
Paket) finden Sie hier: https://medium.com/@thucnc/the-fastest-way-to-find-files-by-filename-mlocate-locate-commands-55bf40b297ab
locate
wurde vor zwei Jahren erwähnt: askubuntu.com/a/333728/158442