@ Gilles: Laut der Bash-Manpage bleiben set -die Positionsparameter ohne Argumente unverändert.
Camh
@ Camh Ich muss nicht zustimmen. Ich sehe dies im Handbuch: set - Wenn dieser Option keine Argumente folgen, werden die Positionsparameter nicht gesetzt. Andernfalls werden die Positionsparameter auf die Argumente gesetzt, auch wenn einige von ihnen mit einem - beginnen.
kdubs
@kdubs, für die Sie die Manpage zitieren set --. Ich habe einen set -einzelnen Bindestrich verwendet, der besagt: "Wenn keine Argumente vorhanden sind, bleiben die Positionsparameter unverändert."
Camh
Du hast recht. Ich habe sie verwirrt. Mein Bildschirm ließ Ihre - aussehen wie -
kdubs
4
Deaktivieren Sie einfach alle Positionsparameter mit:
shift $#
So entfernen Sie die ersten 3 Positionsparameter:
shift 3
Die Umschalttaste "knallt" die ersten N Positionsparameter ab. Mit $ # erhalten wir die Gesamtzahl der Positionsparameter. Der Befehl löscht somit alle Positionsparameter.
set -
die Positionsparameter ohne Argumente unverändert.set --
. Ich habe einenset -
einzelnen Bindestrich verwendet, der besagt: "Wenn keine Argumente vorhanden sind, bleiben die Positionsparameter unverändert."Deaktivieren Sie einfach alle Positionsparameter mit:
So entfernen Sie die ersten 3 Positionsparameter:
Die Umschalttaste "knallt" die ersten N Positionsparameter ab. Mit $ # erhalten wir die Gesamtzahl der Positionsparameter. Der Befehl löscht somit alle Positionsparameter.
quelle