Schleife durch Verzeichnisse rekursiv verprügeln

Schleife durch Verzeichnisse rekursiv verprügeln
Die Bash Shell ist ein unglaubliches Werkzeug, das eine Menge Leichtigkeit und Funktionalität von Terminal bietet. In diesem schnellen Tutorial werden verschiedene Möglichkeiten erörtert, um Verzeichnisse zu durchlaufen und bestimmte Funktionen rekursiv auszuführen.

Die Bash for Loop

Um eine rekursive Schleife durch Verzeichnisse zu erreichen, werden wir Bash -Schleifen, insbesondere eine für eine Schleife.

Die für Schleife ist eine häufige Art von Schleife in Bash und anderen Programmiersprachen. Es iteriert eine bestimmte Liste von Elementen/Optionen, bis eine Reihe von Befehlen ausgeführt werden.

Die allgemeine Syntax für den Befehl for Loop lautet:

Für mich in der Liste
Tun
[BEFEHL]
Erledigt;

Hier ist ein Beispiel für eine Bash -Schleife lautet:

#/bin/bash
denn ich in 0… 10
Tun
echo '$' '
Erledigt

Die obige Schleife druckt Werte von 0 bis 10.

Bash -Benutzereingabe

Als nächstes müssen wir den Benutzer auffordern, ein gültiges Verzeichnis zu durchqueren. Um die Benutzereingabe zu akzeptieren, verwenden wir den Befehl echo in bash.

Zum Beispiel:

#!/Bin/Bash
Echo "Geben Sie das Verzeichnis ein"
Lesen Sie Dir
CD $ dir
echo "jetzt in /etc"

Dateien verschieben (Bash -Skript)

Mit den Konzepten von Schleifen und Benutzereingaben können wir unsere Shell zusammenstellen. Die erste Operation besteht darin, Dateien rekursiv mit spezifischen Erweiterungen zu finden und sie zu verschieben.

Hier ist ein Beispielskript dafür:

#/bin/bash
echo "eingeben"
Lesen Sie Dir
Echo "Ziel eingeben"
Lesen Sie Dest
für i in $ (finde $ dire -name '*.Protokoll');
Tun
mv -v $ i $ dest
Erledigt;

Das Skript wird den Benutzer nach einem Verzeichnis fragen und dann nach einer bestimmten Erweiterung suchen. Anschließend verschiebt die Dateien in das angegebene Ziel.

Dateien löschen

Das obige Skript kann auch geändert werden, um Dateien zu löschen, anstatt sie zu verschieben. Ein Beispiel ist als als

#/bin/bash
echo "eingeben"
Lesen Sie Dir
für i in $ (finde $ dire -name '*.Protokoll');
Tun
rm -rf $ i
Erledigt;

Dateien drucken

Um die Dateien in einem Verzeichnis zu drucken, verwenden Sie das Skript als:

#/bin/bash
echo "eingeben"
Lesen Sie Dir
CD $ dir
denn ich in $ (finde $ dir -type f);
Tun
echo $ i;
Erledigt;

Abschluss

Die obigen Beispiele sind beispielhafte Skripte, mit denen Sie Verzeichnisse verzeichnen und eine bestimmte Aktion ausführen können. Es ist gut zu beachten, dass es Tools gibt, die entwickelt wurden, um solche Aufgaben auszuführen, aber ein Skript ist ein guter Weg, wenn Sie kein geeignetes Tool finden können.