Diese Frage ist inspiriert von Warum wird die Verwendung einer Shell-Schleife zum Verarbeiten von Text als schlechte Praxis angesehen? Ich sehe diese Konstrukte for file in `find . -type f -name ...`; do smth with ${file}; done und for dir in $(find . -type d -name ...); do smth with …
Wozu dient das doSchlüsselwort in der Bash- forLoop-Syntax? Für mich fühlt es sich überflüssig an. for i in `seq 1 2`; do echo "hi"; done Warum ist die Syntax nicht so? for i in `seq 1 2`; echo "hi"; done Ich bin sicher, dass es einen Zweck erfüllt . Ich …
Ich habe das folgende Bash-Skript: #!/bin/bash upperlim=10 for i in {0..10} do echo $i done for i in {0..$upperlim} do echo $i done Die erste forSchleife ( ohne die Variable upperlimin der Schleifensteuerung) funktioniert einwandfrei, die zweite forSchleife ( mit der Variablen upperlimin der Schleifensteuerung) jedoch nicht. Kann ich die …
Ich würde gerne ein Äquivalent von finden cmd 1 && cmd 2 && ... && cmd 20 aber mit Befehlen innerhalb einer forSchleife ausgedrückt wie for i in {1..20} do cmd $i done Was würden Sie vorschlagen, um im zweiten Ausdruck ein Äquivalent zum ersten zu finden?
In Bash weiß ich, dass es möglich ist, eine forSchleife zu schreiben , in der eine Regelungsvariable iüber bestimmte Ganzzahlen iteriert. Zum Beispiel kann ich ein Bash-Shell-Skript schreiben, das die ganzen Zahlen zwischen 1 und 10 ausgibt: #!/bin/bash for i in {1..10} do echo $i done Ist es möglich, stattdessen …
In der Bash verwende ich oft for-Schleifen wie die folgenden for file in *.type; do sommecommand "$file"; done; um eine Operation für alle passenden Dateien durchzuführen *.type. Wenn in den Arbeitsverzeichnissen keine Datei mit dieser Endung gefunden wird, wird der Stern nicht erweitert und normalerweise erhalte ich eine Fehlermeldung, dass …
${!FOO}Führt eine Doppelsubstitution in durch bash, dh, es wird der (Zeichenfolge-) Wert von FOO als Variablenname verwendet. zshunterstützt diese Funktion nicht. Gibt es eine Möglichkeit, diese Arbeit in bashund gleich zu machen zsh? Hintergrund: Ich habe eine Liste von Umgebungsvariablen, wie PATH MAIL EDITOR und wollen zuerst die Variablennamen und …
Ich habe einen Ordner mit dem Namen 'sample' und er enthält 3 Dateien. Ich möchte ein Shell-Skript schreiben, das diese Dateien im Beispielordner liest und sie mit curl auf einer HTTP-Site veröffentlicht. Ich habe Folgendes geschrieben, um Dateien im Ordner aufzulisten: for dir in sample/*; do echo $dir; done Aber …
Gibt es eine Möglichkeit, mehrere Variablen (nicht nur ganze Zahlen) in forSchleifen anzugeben bash? Ich kann 2 Akten haben, die beliebigen Text enthalten, mit dem ich arbeiten müsste. Was ich funktionell brauche, ist so etwas: for i in $(cat file1) and j in $(cat file2); do command $i $j; done …
Ich benötige mein Skript, um mit jeder Datei im aktuellen Verzeichnis etwas zu tun, mit Ausnahme von Unterverzeichnissen. Im aktuellen Pfad befinden sich beispielsweise 5 Dateien, von denen eine ein Ordner (ein Unterverzeichnis) ist. Mein Skript sollte einen Befehl aktivieren, der beim Ausführen des Skripts als Argumente angegeben wird. Das …
Ich möchte eine for-Schleife in Bash mit 0,02 als Inkremente erstellen, die ich versucht habe for ((i=4.00;i<5.42;i+=0.02)) do commands done aber es hat nicht funktioniert.
Ich habe ein Bash-Skript, das Docker einfach ein Bild pusht: docker push $CONTAINER_IMAGE:latest Ich möchte dreimal schleifen, wenn dies fehlschlägt. Wie soll ich das erreichen?
Ich habe ein Problem mit for loop in bash. Zum Beispiel: Ich habe ein Array ("etc" "bin" "var"). Und ich iteriere auf diesem Array. Aber in der Schleife möchte ich einen Wert an das Array anhängen. Z.B array=("etc" "bin" "var") for i in "${array[@]}" do echo $i done Dies wird …
Ist dies der richtige Weg, um mehrere aufeinanderfolgende Verarbeitungen im Hintergrund zu starten? for i in {1..10}; do for j in {1..10}; do run_command $i $j; done & done; Alle jsollten für eine bestimmte Zeit nacheinander verarbeitet werden i, aber alle isollten gleichzeitig verarbeitet werden.
Ich habe den folgenden Code, um einige Strigns in mehreren Dateien zu ersetzen, aber die for-Schleife sucht nach der ersten Datei und führt das Perl-Skript nicht aus. Unten ist mein Code if [ -f zebu.work.post_opt/ZEBU_CTO_FT_MOD.v ] then for file in $(./zebu.work.post_opt/ZEBU_CTO_FT_MOD*); do perl -i -p -e 's/input/inout/g' $file; perl -i …
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.