Wie prüft man, ob $*leer ist? Mit anderen Worten, wie kann geprüft werden, ob für einen Befehl keine Argumente angegeben
Wie prüft man, ob $*leer ist? Mit anderen Worten, wie kann geprüft werden, ob für einen Befehl keine Argumente angegeben
Für Bash-Skripte kann ich "$@"auf Argumente zugreifen. Was ist das Äquivalent, wenn ich einen Alias
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...
Ich habe eine Reihe von "Optionen" eines Befehls. my_array=(option1 option2 option3) Ich möchte diesen Befehl in einem Bash-Skript aufrufen und die Werte aus dem Array als Optionen verwenden. So command $(some magic here with my_array) "$1"wird: command -option1 -option2 -option3 "$1" Wie kann ich...
Ich bin ziemlich verwirrt über die folgenden regulären Ausdrücke, die ich in einem Shell-Skript gefunden habe: ${0##*/} ${0%/*} Wie arbeiten
Ich dachte, das wäre einfach - aber es erweist sich als komplexer als ich erwartet hatte. Ich möchte alle Dateien eines bestimmten Typs in einem Verzeichnis durchlaufen, also schreibe ich Folgendes: #!/bin/bash for fname in *.zip ; do echo current file is ${fname} done Dies funktioniert , solange...
Ich beobachte ein seltsames Verhalten, wenn ich set -e( errexit), set -u( nounset) zusammen mit ERR- und EXIT-Traps verwende. Sie scheinen verwandt zu sein, daher erscheint es vernünftig, sie in eine Frage zu stellen. 1) set -ulöst keine ERR-Traps aus Code: #!/bin/bash trap 'echo "ERR (rc: $?)"'...
An der Kommandozeile verwende ich oft "einfache" Befehle wie mv foo/bar baz/bar aber ich weiß nicht, wie ich das alles nennen soll: ┌1┐ ┌──2───┐ git checkout master │ └──────3──────┘ └───────4─────────┘ Ich (glaube ich) weiß, dass 1 ein Befehl und 2 ein Argument ist, und ich würde wahrscheinlich 3...
Wie kann ich ein Stück $@in Bash erhalten, ohne zuerst alle Positionsparameter in ein anderes Array wie dieses kopieren zu müssen? argv=( "$@" ) echo
Gemäß der Dokumentation ist die Verwendung des vga=Kernel-Parameters ab GRUB2 veraltet. Die Tatsache, dass einige neuere Kernel es auf bestimmten Adaptern anscheinend nicht mehr unterstützen, spielt keine Rolle, da meine Grafikkarte sieben bis acht Jahre alt ist. Das Problem ist jetzt, dass ich...
Ich versuche, eine Funktionsmethode in einem Bash-Skript zu erstellen, die einen Befehl ausführt, der von den Parametern an die Methode übergeben wird. Bedeutet so etwas: special_execute() { # Some code # Here's the point where the command gets executed $@ # More code } special_execute echo "abc"...
Was bedeutet die Ausgabe von echo $-1, echo $-2, echo $-3.. das? Auf einer meiner Linux-Boxen zeigt es mir: echo $-1 imsBEl1 echo $-2 imsBEl2 Und auf einer anderen Linux-Box zeigt es: echo $-1 himBH1 echo $-2 himBH2 Mappen sie auf einige Speicherorte oder etwas
Ich möchte eine Funktion schreiben, die ich aus einem Skript mit vielen verschiedenen Variablen aufrufen kann. Aus einigen Gründen habe ich große Probleme damit. Beispiele, die ich gelesen habe, verwenden immer nur eine globale Variable, aber das würde meinen Code nicht so gut lesbar machen, wie...
Diese Frage ist ganz allgemein und gilt nicht nur für meine Situation, sondern ... Ich habe eine kleine Busybox-Appliance, mit der ein Benutzer ohne Rootberechtigung ein bestimmtes Skript mit Rootberechtigungen ausführen kann. So etwas wie dieses kleine Skript zum Aktivieren von DHCP, bei dem die...
Zum Beispiel, wenn ich ein Skript ./foo habe, das 10 Parameter akzeptiert, und ich nur den 8. Parameter übergeben möchte. Die einzige Möglichkeit, wie ich das derzeit weiß, ist: ./foo '' '' '' '' '' '' '' 'bar' Gibt es einen einfacheren / besseren
Ich stecke ein bisschen fest. Meine Aufgabe ist es, die Argumente für mein Skript in umgekehrter Reihenfolge zu drucken, mit Ausnahme der dritten und vierten. Was ich habe, ist dieser Code: #!/bin/bash i=$# for arg in "$@" do case $i in 3) ;; 4) ;; *) eval echo "$i. Parameter: \$$i";; esac i=`expr...
Ich habe eine Funktion zum schnellen Erstellen eines neuen SVN-Zweigs, der so aussieht function svcp() { svn copy "repoaddress/branch/$1.0.x" "repoaddress/branch/dev/$2" -m "dev branch for $2"; } Womit ich schnell einen neuen Zweig erstelle, ohne die Adressen und einige andere Dinge nachschlagen...
Ist es möglich, auf Indizes in zu verweisen $@? Ich kann nirgendwo im GrayCat-Wiki einen Verweis finden, der wie folgt verwendet werden kann , und das Advanced Scripting Guide und andere weisen dies einer anderen Variablen zu, bevor sie stattdessen geändert werden. $ echo ${@[0]} -bash: ${@[0]}:...
Kurze Erklärung der Frage: Gibt es eine integrierte Bash-Methode, um die Anzahl der Elemente im Bash-Array zu zählen, wobei der Name des Arrays dynamisch ist (dh in einer Variablen gespeichert ist), ohne eine vollständige Kopie des Arrays zu erstellen oder zu verwenden eval? Mehr Informationen: Mit...
Wie mache ich das: set foo bar baz unset # Something else here echo $# # Should ouput 0 Dadurch set "", $#wird noch 1 und nicht