Ich verstehe, was Klammererweiterung ist, aber ich weiß nicht, wie ich sie am besten verwenden soll. Wann benutzt du es Bitte bringen Sie mir einige praktische und bemerkenswerte Beispiele bei, wenn Sie Ihren eigenen Tipp haben.
Wenn ich Folgendes verwende, erhalte ich wie erwartet ein Ergebnis: $ echo {8..10} 8 9 10 Wie kann ich diese Klammererweiterung auf einfache Weise verwenden, um die folgende Ausgabe zu erhalten? $ echo {8..10} 08 09 10 Ich weiß jetzt, dass dies mit seq(nicht ausprobiert) erreicht werden kann, aber das …
Ich möchte $var ineine Shell-Klammer-Erweiterung mit einem Bereich in Bash verwenden. Einfach ausgedrückt {$var1..$var2}funktioniert das nicht, also bin ich "seitlich" gegangen ... Das Folgende funktioniert, aber es ist ein bisschen klug. # remove the split files echo rm foo.{$ext0..$extN} rm-segments > rm-segments source rm-segments Gibt es einen "normaleren" Weg?
Ich habe über 15.000 Dateien , die genannt werden file_1.pdb, file_2.pdbusw. Ich kann Katze über ein paar tausend von ihnen um , indem Sie: cat file_{1..2000}.pdb >> file_all.pdb Wenn ich dies jedoch für 15.000 Dateien tue, wird der Fehler angezeigt -bash: /bin/cat: Argument list too long Ich habe gesehen, dass …
Zum Beispiel {a..c}{1..3}erweitert um a1 a2 a3 b1 b2 b3 c1 c2 c3. Wenn ich drucken wollte a1 b1 c1 a2 b2 c2 a3 b3 c3, gibt es eine analoge Möglichkeit, dies zu tun? Was ist der einfachste Weg?
Dies: $ echo {{a..c},{1..3}} produziert dies: a b c 1 2 3 Das ist schön, aber schwer zu erklären $ echo {a..c},{1..3} gibt a,1 a,2 a,3 b,1 b,2 b,3 c,1 c,2 c,3 Ist das irgendwo dokumentiert? Die Bash-Referenz erwähnt es nicht (obwohl es ein Beispiel gibt, das es verwendet).
Gibt es eine Möglichkeit, stdout und stderr über Variablen umzuleiten, wie das Hinzufügen von Befehlsoptionen im Skript? Zum Beispiel habe ich ein Skript: #!/bin/bash -x TEST=">/dev/null 2>&1" OPT='-p -v' mkdir $OPT 123/123/123 $TEST Ich kann sehen, dass OPT -pohne Probleme durch ersetzt wird und Bash interpretiert es als Option. Die …
Wie man mkdirheißt es -p, --parents no error if existing, make parent directories as needed Als ich diesen Befehl ausgeführt habe mkdir -p work/{F1,F2,F3}/{temp1,temp2} Es erstellt eine Ordnerstruktur wie dieser workübergeordneten Ordner dann F1, F2, F3untergeordneten Ordner und temp1und temp2untergeordneten Ordner unter drei übergeordneten Ordner F1, F2, F3. work -F1 …
Die Ausgabe des obigen Befehls bei Weitergabe durch Echo lautet: # echo systemctl\ {restart,status}\ sshd\; systemctl restart sshd; systemctl status sshd; Auch wenn ich die Ausgabe in das Terminal einfüge, funktioniert der Befehl. Aber wenn ich versuche, den Befehl direkt auszuführen, erhalte ich: # systemctl\ {restart,status}\ sshd\; bash: systemctl restart …
Ein Bash-Skript, das enthält for i in {a,b}-{1,2}; do echo $i; done druckt a-1 a-2 b-1 b-2 wenn ausgeführt. Dies ist, was ich erwartet hatte - als das {a,b}Konstrukt erweitert wird. Wenn jedoch (ein anderes) Skript enthält v={a,b}-{1,2} echo $v es druckt {a,b}-{1,2} Das ist nicht das, was ich erwartet …
Ich habe versucht, Textdateien in Unterordnern zu verketten und habe versucht: cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1}/book.txt > out$var Dies brachte jedoch nichts zurück. Also, versucht einen nicht existierenden 'Unterordner2' hinzuzufügen cat ./{mainfolder1,mainfolder2,mainfolder3}/{subfolder1,subfolder2}/book.txt > out$var Und dieses Mal hat es geklappt und die Dateien erfolgreich verkettet. Warum passiert das?
Ich versuche, eine Datei mit geschweiften Klammern unter einem anderen Namen in dasselbe Verzeichnis zu kopieren. Ich benutze Bash 4.4.18. Folgendes habe ich getan: cp ~/some/dir/{my-file-to-rename.bin, new-name-of-file.bin} aber ich bekomme diesen fehler: cp: cannot stat '/home/xyz/some/dir/{my-file-to-rename.bin,': No such file or directory Sogar eine einfache Klammererweiterung wie diese gibt mir den …
Die {}Klammererweiterungssyntax von Bash ermöglicht das Erstellen einfacher Permutationen # echo {b,c,d}{a,e,i,o,u} ba be bi bo bu ca ce ci co cu da de di do du Es ist mir jedoch nicht klar, ob / wie es möglich ist, dies zusammen mit Arrays zu verwenden, außer bei sehr umständlicher Verwendung …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.