In letzter Zeit besteht der Bedarf, automatisch nach bestimmten Dateien in einem bestimmten Ordner zu suchen, und der Dateipfad und der Dateiname müssen separat gespeichert werden. Obwohl dies mithilfe von Pythons Walk erreicht werden kann, fühlt es sich etwas kompliziert an. Daher möchte ich sehen, ob die integrierten Befehle von Linux diese Aufgabe erledigen können. Umfeld Die zu durchsuchende Verzeichnisstruktur ist wie folgt . |____test | |____test2.txt | |____test.py | |____test.txt | |____regex.py |____MongoDB | |____.gitignore | |____cnt_fail.py | |____db Ziel 1: Alle py-Dateinamen abrufen Wenn Sie nur find . -name '*.py' zum Suchen verwenden, ist das Ergebnis der Pfad
Wenn wir nur den Dateinamen benötigen, können wir den von Linux bereitgestellten Befehl basename verwenden Um alle Suchergebnisse von find mit Basisnamen zu verarbeiten, müssen wir den Parameter -exec von find verwenden. Der letzte Befehl lautet: finde . -name '*.py' -exec basename {} \; Ergebnis:
Die {} werden in Verbindung mit der Option -exec verwendet, um alle Ergebnisse abzugleichen und dann ihre Dateinamen zu extrahieren. Ziel 2: Alle py-Dateipfade abrufen, Duplikate entfernen und das führende Zeichen "./" löschen Linux hat auch einen Befehl dirname, um den Dateipfad zu erhalten Ändern Sie den vorherigen Befehl leicht, um alle Dateipfade anzuzeigen finde . -name '*.py' -exec dirname {} \;
Wir können sehen, dass es doppelte Pfade gibt. Um Duplikate in Linux zu entfernen, können wir sort verwenden und den Parameter -u hinzufügen. Der Parameter -u wird verwendet, um Duplikate in den Sortierergebnissen zu entfernen. Wir müssen die Ausgabe des vorherigen Befehls als Eingabe an sort übergeben und denken dabei natürlich an Pipes. Der Pipe-Befehlsoperator lautet: |, der nur die korrekten Ausgabeinformationen verarbeiten kann, die vom vorherigen Befehl übermittelt wurden, d. h. die Standardausgabeinformationen. Der Befehl nach dem Hinzufügen von sort lautet Die laufenden Ergebnisse sind:
Zum Schluss löschen wir mit cut das ./ Zeichen vor jedem Pfad. Der Parameter -c3- bedeutet, dass der Teilstring vom dritten Zeichen des Strings (Startposition ist 1) bis zum Ende extrahiert wird. Der abschließende Befehl lautet: Laufergebnisse:
Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Übung zum Hochladen von Element-Avataren
>>: Zusammenfassung der gemeinsamen Updatemethode für MySQL-Updates mehrerer Tabellen
Problem: Das PHP-Programm auf einem Server kann k...
MAC installiert mysql8.0, der spezifische Inhalt ...
Vorwort Es ist sehr einfach, einen Server in node...
MySQL muss auf Version 5.5.3 oder höher aktualisi...
In diesem Artikel finden Sie den spezifischen Cod...
1. Prozentuale Basis für Elementbreite/-höhe/-pol...
Inhaltsverzeichnis Vorwort Komponenten erstellen ...
Dieser Artikel beschreibt, wie man über Docker ei...
Syntaxformat: row_number() über (Partition durch ...
Die Sache ist: Jeder kennt „Speicherlecks“. Es gi...
Inhaltsverzeichnis 1. Installieren Sie die erford...
Verwenden Sie einfach CSS, um alle Effekte von Ec...
1. Scroll Snap ist eine unverzichtbare Fähigkeit ...
1. Anforderungsbeschreibung Zeigt das Löschsymbol...