Ich habe viele Tutorials gesehen, die --
After-Befehle verwenden. Etwas wie das:
command --
Was bedeutet dies --
bedeuten?
command-line
Jibril
quelle
quelle
Antworten:
Mit
--
wird das Ende der Befehlszeilenoptionen angegeben. Auf diese Weise können Sie Argumente verwenden, die mit beginnen--
. Wenn Sie beispielsweise eine Datei mit dem Namen erstellen--foo
:Und versuchen Sie dann, es zu löschen,
rm
und denken Sie, Sie geben ihm ein Argument:Eine Möglichkeit, dies zu umgehen, ist die Verwendung von
--
:Dies ist gängige Praxis und wird von POSIX empfohlen. Daher wird es von vielen Programmen unterstützt.
quelle
rm
Programms und vieler POSIX-kompatibler Dienstprogramme. Siehe Leitlinie 10 . Um tatsächlich zu überprüfen, ob Bash die Arbeit nicht erledigt (und das würde keinen Sinn ergeben), erstellen Sie einfach ein kleines Skript mit justprintf '> %s <\n' "$@"
und starten es mit--
.--
, aber das liegt natürlich einfach daran, dass das betreffende Perl-Modul (getopts
) es auch unterstützt. Sie haben völlig recht, ich habe nur schnell gesuchtman bash
, den Abschnitt gesehen, den ich zitiert hatte, aber nicht bemerkt, dass er im Abschnitt "Befehlszeilenoptionen" war. Danke für die Korrektur, antworte bearbeitet.Die meisten Befehle verwenden ein -, um dem Befehl mitzuteilen, dass weitere Parameter anders behandelt werden sollen. Ein Beispiel ist der oben angegebene rm_filename. Ein anderes Beispiel: Ein Skript wie 'startx' interpretiert sich selbst vor - und übergibt alles danach an den X-Server.
quelle