Aby utworzyć plik tar do katalogu, na tar
polecenie z compress
, verbose
i file
opcje mogą być wpisane w ten sposób:
$ tar -cvf my.tar my_directory/
Ale działa to również w ten sposób:
$ tar cvf my.tar my_directory/
Oznacza to, że bez myślnika (-) poprzedzającego opcje. Dlaczego miałbyś kiedykolwiek przesyłać myślnik (-) do listy opcji?
Odpowiedzi:
Istnieje kilka różnych wzorców opcji używanych historycznie w aplikacjach UNIX. Kilka starych, takich jak tar , używa schematu pozycyjnego:
jak na przykład używa tar
W pierwszej próbie uniknięcia pomyłki, tar i kilka innych programów ze starym stylem flagi-argumenty pozwoliły na rozgraniczenie flag kreskami, ale większość z nas, starzy faceci, po prostu to zignorowało.
Niektóre inne polecenia mają bardziej skomplikowaną składnię wiersza poleceń, na przykład dd (1), która używa flag, znaków równości, nazw ścieżek, argumentów i kuropatwy na drzewie gruszy, wszystkie z dzikim porzuceniem.
W BSD i późniejszych wersjach unixa konwergencja ta była mniej więcej zbieżna z flagami jednoznakowymi oznaczonymi „-”, ale zaczęło to przedstawiać kilka problemów:
--output
.Następnie Sun zdecydował, że dodatkowe „-” jest zbędne i zaczął używać flag o długim stylu z pojedynczymi „-s”.
I w ten sposób doszło do bałaganu, jakim jest teraz.
źródło
-
. Czy to ze Słońca?Możesz podać opcje tar w standardowy sposób uniksowy,
tar -c -f foo -v -B file1 file2 file3
gdzie potrzebujesz myślnika, aby rozróżnić opcje i parametry lub nazwy plików na końcu wiersza poleceń. Lub możesz umieścić wszystkie opcje razem w pierwszym argumencie, w którym to przypadku myślnik jest opcjonalny.Następnie jest miejsce
ps
, w którym używasz myślników, jeśli używasz opcji SysV-ish, i pomiń je, jeśli używasz opcji BSD, tylko po to, aby wszystko było bardziej mylące.I nawet nie rozmawiajmy o tym
find
.źródło
Myślnik służy do rozróżnienia między nazwami i wartościami parametrów opcji. Myślę, że to bardziej standardowa konwencja.
źródło
best-practice
tag, ponieważ myślałem, że może do tego dojść.Istnieją cztery konwencje korzystania z opcji wiersza poleceń systemu Unix:
Na przykład:
źródło
Z wiodącym znakiem minus / myślnik (-) musisz zachować opcje w odpowiedniej kolejności. Bez minus kolejność opcji może się zmienić.
Na przykład:
źródło
f
biorą argument, którego kolejność ma znaczenie. Zobacz unix.stackexchange.com/a/239120/3169