Ich habe verstanden, was brace expansion ist.
Aber ich weiß nicht, wo ich das verwende.Wann verwenden Sie die Klammererweiterung?
Wann verwenden Sie es?
Bitte geben Sie mir einige praktische Beispiele.
Danke.
Ich habe verstanden, was brace expansion ist.
Aber ich weiß nicht, wo ich das verwende.Wann verwenden Sie die Klammererweiterung?
Wann verwenden Sie es?
Bitte geben Sie mir einige praktische Beispiele.
Danke.
Der Bereich Ausdrucksform der Klammer Erweiterung wird anstelle von seq
in einer for
Schleife verwendet:
for i in {1..100}
do
something # 100 times
done
Zum Beispiel, machen Sie eine Sicherung aller Dateien in einem Verzeichnis:
for i in * ; do
cp "$i"{,.bak}
done
Sie es verwenden, wenn Sie gegen mehrere Möglichkeiten übereinstimmen soll. ZB
ls src/{Debug,Release}/*.o # List all .o files in the Debug and Release directories.
In bash verwenden Sie geschweifte Klammer Erweiterung, wenn Sie einen Bereich erstellen möchten, zB
for r in {0..100}
for r in {0..10..2}
#WITH Schritt von 2
for z in {a..z}
Statt externe Befehle verwenden wie seq 0 100
. Außerdem kann die Klammererweiterung verwendet werden, um Dateitypen aufzulisten, z. B.
for file in *.{txt,jpg}
.
Dies listet alle Dateien auf, die TXT- und JPG-Erweiterungen haben.
Das kann unmöglich funktionieren. –
Entschuldigung, verschoben {, .bak} außerhalb des zitierten Teils. war ein Tippfehler. – Benoit
Ok, das macht mehr Sinn. Tatsächlich habe ich bis jetzt nicht erkannt, dass die Pfadkomponenten nicht existieren müssen. –