Ich sehe oft einen einfachen Gedankenstrich -
oder einen doppelten Gedankenstrich, --
gefolgt von Linux-Befehlen oder anderen installierten Linux-Programmen.
Was sind die Unterschiede zwischen einfachen Strichen und doppelten Strichen?
Geht es nur um Abkürzung? Zum Beispiel -v
bedeutet die --verbose
meiste Zeit.
command-line
Peng Zhang
quelle
quelle
Antworten:
Es ist eine Frage der Konvention. POSIX-Standardprogramme verfügen normalerweise nur über Optionen für einzelne Zeichen, denen jeweils ein Bindestrich vorangestellt ist. Die längeren Versionen sind, soweit ich das beurteilen kann, eine Verbesserung von GNU, da sie normalerweise mit doppelten Bindestrichen versehen sind. Sie können dies in den Bibliotheken und Programme sehen zu Parse - Optionen verwendet -
getopt
undgnu-getopt
sind. Nicht-GNU- und nicht-POSIX-kompatible Programme können etwas anderes tun. Beachten Sie, dass Sie wirklich nicht sicher sein können, ob die lange Form eines Arguments von Programm zu Programm identisch ist.-f
in der Regel bedeutet--force
, aber nicht mitapt-get install
(häufiges Missverständnis).-v
kann Version bedeuten - normalerweise oder--verbose
und so weiter. Überprüfen Sie die Manpages oder andere Dokumentationen, um sicherzugehen. Schauen Sie sich auch das anWikipedia-Artikel zu getopt . All dies ist mindestens zehn Jahre älter als Linux.dd
ist ein Beispiel für ein POSIX-Standarddienstprogramm, das überhaupt keine Optionen mit Bindestrich enthält .find
ist das klassische Beispiel für ein POSIX-Standarddienstprogramm , das Wortoptionen mit einzelnen Bindestrichen enthält - fast allefind
Optionen sind mehrstellig.ps
unterstützt mehrere Optionsstile:GNU
tar
unterstützt auch mehrere Optionsstile.Ziehen Sie in der Regel die langen Optionen in Skripten vor, wenn Sie sicher sein können, dass die Skripten in kompatiblen Umgebungen ausgeführt werden - die Verbesserung der Übersichtlichkeit ist ein Segen beim Debuggen. Aus Gründen der Portabilität werden die kurzen Optionen bevorzugt.
quelle
Normalerweise können - Optionen wie
pacman -Syu
äquivalent zu verkettet werdenpacman -S -y -u
, und - Optionen nehmen im Allgemeinen einen Parameter wie in./configure --prefix=/usr
quelle