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
Ein Shell-Mechanismus, mit dem beliebige Zeichenfolgen generiert werden.
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
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...
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}...
Was ist der Unterschied zwischen a[bc]dund a{b,c}d? Warum nutzen Menschen, a{b,c}dwenn es sie schon gibt
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...
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
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
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...
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...
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:...
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...
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
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
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 von...
$ touch file{1..12} $ echo *e{1..12} file1 file2 file3 file4 file5 file6 file7 file8 file9 file10 file11 file12 $ echo *{1..12} file1 file11 file12 file2 file3 file4 file5 file6 file7 file8 file9 file10 file11 file12 Ich verstehe nicht, warum das passiert. Kann mir bitte jemand
Ich würde gerne wissen, ob es eine Möglichkeit gibt, die Bash-Erweiterung zu verwenden, um alle Kombinationsmöglichkeiten für eine Anzahl von Ziffern hexadezimal anzuzeigen. Ich kann in Binärdateien erweitern In Basis 2: echo {0..1}{0..1}{0..1} Welches gibt zurück: 000 001 010 011 100 101 110 111...
Ich habe endlich verstanden / entdeckt, warum ich den bash(und auch zshden) Klammererweiterungsbereich nie richtig verwenden konnte: Die Syntax ist {1..10}anstelle dessen, was ich als Ellipse angenommen habe , d {1...10}. H. Darf ich wissen, warum zwei Punkte gegenüber drei Punkten ausgewählt...
Wenn ich in zsh (und anderen Shells) ein Argument wie (zum Beispiel) einfüge: {a,b,c}{d,e,f} Klammererweiterung macht es in: ad ae af bd be bf cd ce cf Für meine Zwecke ist die Reihenfolge der Argumente wichtig, und ich brauche die geschweiften Klammern, um von rechts nach links anstatt von links...
Muss ich eine Konfiguration vornehmen, um die Klammererweiterung zu starten? Wenn ich laufe mkdir {1..10}, wird nur eine Verzeichnisbenennung erstellt
Lassen Sie das Skript unten mein Dilemma veranschaulichen. #!/bin/zsh STUFF=( moose-hoof ovary clydsedale ) echo ${MINE=$(printf "MY-%s " $STUFF)} echo ${MINE_EXP=${STUFF/^/MY-}} MEIN Elchhuf MEIN Eierstock MEIN Clydsedale Elchhuf Eierstock Clydsedale Was sind die richtigen Erweiterungsflags, um...