Fragen speziell zu GNUs Bourne Again SHell im Gegensatz zu anderen Bourne / POSIX-Shells. Verwenden Sie bei Fragen zu Unix-Shells im Allgemeinen stattdessen das Tag / shell.
Ich habe ein Verzeichnis, das nummerierte Bilddateien enthält, ungefähr so: 01.png 02.png 03.png 03.svg 04.png 05.png 06.jpg 07.png 08.png 09.png 09.svg 10.png Manchmal gibt es mehrere Versionen einer Datei in verschiedenen Formaten (z. B. a pngund svgVersion der obigen Dateien 03und 09), aber die Nummern sind ansonsten aufeinanderfolgend. Normalerweise befinden …
Wie runde ich IEEE 754-Gleitkommazahlen in der Befehlszeile korrekt? Ich möchte die Genauigkeit der Ausgabenummer angeben - die Anzahl der Bruchstellen. Eine 6.66präzise Rundung 1sollte 6.7zum Beispiel ergeben. Mehr in der folgenden Tabelle: Value Precision Rounded 6.66 0 7 6.66 1 6.7 6.66 2 6.66 6.66 3 6.660 6.666 3 …
In der bashSchale, können wir eine Funktion definieren , fmit f(){ echo Hello; } und dann erneut deklarieren / überschreiben mit f(){ echo Bye; } Ich glaube, es gibt eine Möglichkeit, Funktionen auf diese Weise davor zu schützen, überschrieben zu werden.
Ich habe ein Black-Box-UNIX-Programm, das in einer Bash-Shell verwendet wird, das Datenspalten aus stdin liest, sie verarbeitet (einen Glättungseffekt anwendet) und dann auf stdout ausgibt. Ich benutze es von UNIX-Pipes, wie generate | smooth | plot Für mehr Glättung kann ich das Glätten wiederholen, damit es von der Bash-Befehlszeile als …
Ich möchte eine Zeichenfolge in zwei Hälften teilen und nacheinander drucken. Beispielsweise: abcdef in abc def Gibt es eine einfache Möglichkeit, dies zu tun, oder muss eine Zeichenfolge verarbeitet werden?
Ich verwende einen ProxyJump-Befehl für eine Reihe von SSH-Sitzungen, die ich täglich verwende, und tausche Benutzer in diesen Sitzungen häufig aus, und es exitmacht keinen Spaß, drei- oder viermal hintereinander zu tippen . Ich kenne newline+ ~+, .um eine SSH-Sitzung zu beenden. Ich muss immer noch prüfen, ob sie einvernehmlich …
Ich stelle fest, dass Newline IFSmit einem $ als Präfix gesetzt werden sollte IFS=$'\n' aber wenn ein Doppelpunkt gesetzt ist, einfach IFS=: Ist \neine Variable?
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 …
Ich tue es <command> --help | grep <feature>jeden Tag sehr, sehr oft. Ich habe mich gefragt, ob es möglich ist, so etwas zu machen ^^, "--help | grep"und dann mache ich Folgendes: ls ^^ size Das würde folgendes ausführen: ls --help | grep size
Einfache Frage. Hat die Bash-Shell Unterstützung für die Verwendung von Zeigern beim Schreiben eines Shell-Skripts? Ich bin mit der Erweiterungsnotation vertraut, ${var[@]}wenn ich über das Array iteriere $var, aber es ist nicht klar, dass hier Zeiger verwendet werden, um über die Array-Indizes zu iterieren. Bietet bash Zugriff auf Speicheradressen wie …
Ich versuche so etwas wie: sudo dhclient $wifi || otherFunction Das Problem ist, wenn es dhclientfehlschlägt, hängt es nur, anstatt einen Fehler zu werfen. Wie kann ich das oben Gesagte umschreiben, damit dhclientes getötet und otherFunctionaufgerufen wird, wenn dhclientes nicht in 60 Sekunden fertig ist?
Ich möchte hello worldüber 20 Zeichen ausgeben . printf "%-20s :\n\n" 'hello world!!' # Actual output hello world!! : # Wanted output hello world!!========: Ich möchte jedoch nicht mit Leerzeichen abschließen, sondern mit " = ". Wie mache ich das?
Ich habe gerade versucht, diesen Befehl auszuführen: /etc/ssl/acme/acme.sh --log /var/log/p3x/acme/acme.sh.log --home /etc/ssl/acme --force --issue -d patrikx3.tk -w /var/www/acme-challenge Ich habe diesen Fehler bekommen: Bash: Warnung: Shell Level (1000) zu hoch, wird auf 1 zurückgesetzt Was ist das für ein Fehler?
Angesichts dieser Dateinamen: $ ls -1 file file name otherfile bash Selbst mit eingebettetem Whitespace ist das völlig in Ordnung: $ for file in *; do echo "$file"; done file file name otherfile $ select file in *; do echo "$file"; done 1) file 2) file name 3) otherfile #? …
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.