Ich habe einen Befehl, der Daten an stdout ( command1 -p=aaa -v=bbb -i=4) ausgibt . Die Ausgabezeile kann den folgenden Wert haben: rate (10%) - name: value - 10Kbps Ich möchte diese Ausgabe aufgreifen, um diese 'Rate' zu speichern (ich denke, Pipe wird hier nützlich sein). Und schließlich möchte ich, …
Ich bin auf dieses Skript gestoßen: #! /bin/bash if (( $# < 3 )); then echo "$0 old_string new_string file [file...]" exit 0 else ostr="$1"; shift nstr="$1"; shift fi echo "Replacing \"$ostr\" with \"$nstr\"" for file in $@; do if [ -f $file ]; then echo "Working with: $file" eval …
Gibt es eine einfache Möglichkeit, benannte Parameter an ein Shell-Skript zu übergeben (zu empfangen)? Zum Beispiel, my_script -p_out '/some/path' -arg_1 '5' Und im Inneren my_script.sherhalten sie als: # I believe this notation does not work, but is there anything close to it? p_out=$ARGUMENTS['p_out'] arg1=$ARGUMENTS['arg_1'] printf "The Argument p_out is %s" …
Typische Unix / Linux-Programme akzeptieren die Kommandozeilen-Eingaben als Argument count ( int argc) und als Argument vector ( char *argv[]). Das erste Element von argvist der Programmname, gefolgt von den eigentlichen Argumenten. Warum wird der Programmname als Argument an die ausführbare Datei übergeben? Gibt es Beispiele für Programme, die ihren …
Betrachten Sie den folgenden Code: foo () { echo $* } bar () { echo $@ } foo 1 2 3 4 bar 1 2 3 4 Es gibt aus: 1 2 3 4 1 2 3 4 Ich benutze Ksh88, aber ich interessiere mich auch für andere gebräuchliche Shells. …
Vor einiger Zeit ist mir aufgefallen, dass Benutzernamen und Kennwörter, die curlals Befehlszeilenargumente angegeben wurden, nicht in der psAusgabe erscheinen (obwohl sie natürlich in Ihrem Bash-Verlauf erscheinen können). Sie erscheinen ebenfalls nicht in /proc/PID/cmdline. (Die Länge des kombinierten Benutzernamen / Passwort-Arguments kann jedoch abgeleitet werden.) Demonstration unten: [root@localhost ~]# nc …
Ich habe einen Ordner mit mehr als einer Million Dateien, die sortiert werden müssen, aber ich kann nichts wirklich tun, weil mvdiese Meldung die ganze Zeit ausgegeben wird -bash: /bin/mv: Argument list too long Ich verwende diesen Befehl, um Dateien ohne Erweiterung zu verschieben: mv -- !(*.jpg|*.png|*.bmp) targetdir/
Sagen wir, wenn ich ls befehle, ist die Ausgabe: file1 file2 file3 file4 Ist es möglich, nur eine bestimmte Ausgabespalte anzuzeigen, in diesem Fall file2? Ich habe folgendes ohne Erfolg versucht: echo ls | $2 Grundsätzlich möchte ich nur die zweite Spalte ausgeben, in diesem Fall möchte ich Folgendes ausgeben: …
Ich denke nicht, dass die Shell / Utilities in historischem Unix oder in etwas so "Neuem" wie 4.4BSD unterstützt werden, wenn ein Doppelstrich (oder zwei aufeinanderfolgende Bindestriche) als Begrenzer für das Ende von Optionen verwendet wird . Mit FreeBSD können Sie beispielsweise einen Hinweis sehen, der in den rm Hilfeseiten …
Beim Versuch, ls *.txt | wc -lein Verzeichnis zu öffnen, das viele Dateien enthält , wird die folgende Fehlermeldung angezeigt: -bash: /bin/ls: Argument list too long Ist der Schwellenwert für diese "Argumentliste" von der Distribution oder der Computerspezifikation abhängig? Normalerweise würde ich das Ergebnis eines so großen Ergebnisses an andere …
Ich hatte den Eindruck, dass die maximale Länge eines einzelnen Arguments hier nicht das Problem war, sondern vielmehr die Gesamtgröße des gesamten Argument-Arrays plus die Größe der Umgebung, die auf beschränkt ist ARG_MAX. So dachte ich, dass so etwas gelingen würde: env_size=$(cat /proc/$$/environ | wc -c) (( arg_size = $(getconf …
cd - kann zwischen aktuellem und vorherigem Verzeichnis wechseln. Es sieht so aus -, als hätte ich schon andere Befehle als Argumente verwendet, obwohl ich mich nicht mehr erinnere, ob -dies dasselbe bedeutet wie mit cd. Ich fand, dass -das nicht funktioniert ls. Wird - nur mit CD verwendet?
Ich frage mich, ob es eine allgemeine Möglichkeit gibt, mehrere Optionen über die shebang-Zeile ( #!) an eine ausführbare Datei zu übergeben . Ich benutze NixOS und der erste Teil des Shebangs in jedem Skript, das ich schreibe, ist normalerweise /usr/bin/env. Das Problem, auf das ich stoße, ist, dass alles, …
Ich habe bemerkt, dass |verwendet wird, um Ergebnisse des ersten Befehls an den anderen zu senden. Ich möchte alle Prozesse beenden, die einem Namen entsprechen. Das macht pgrep normalerweise: $ pgrep name 5089 5105 Und mehrere Argumente scheinen zu funktionieren kill: sudo kill 5089 5105 Das ist aber falsch: pgrep …
Ich lese gerade ein paar Tutorials, wie man mit EFI-Stub (efistub) den Linux-Kernel lädt. Diese Anweisungen verwenden häufig Kernel-Boot-Parameter add_efi_memmap. Die vorgesehene Hardware ist Intel x64 mit 8 GB RAM. Mein aktuelles Setup ist grub-efiBootloader und Kernel v3.13. GRUB- Boot ohne das add_efi_memmapBoot-Argument: 23BIOS-e820 Zeilen gezählt vondmesg | grep BIOS-e820: …
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.