Ge Ewa5600k1ww to pralka firmy GE, która ma wiele trybów prania i jest wyposażona w technologię HydroWave. Instrukcje projektowania, montażu i serwisowania są niezbędne do tego, aby zapewnić bezpieczeństwo użytkowników i zapobiegać uszkodzeniom. Instrukcje projektowania i montażu Ge Ewa5600k1ww opisują w jaki sposób pralka powinna być zainstalowana, aby działała poprawnie i bezpiecznie. Instrukcje serwisowania opisują jak pralka powinna być naprawiana i konserwowana, aby utrzymywać jej sprawne działanie przez długi czas.
Ostatnia aktualizacja: Instrukcje projektowania, montażu i serwisowania Ge Ewa5600k1ww
Ta przeglądarka nie jest już obsługiwana.
Przejdź na przeglądarkę Microsoft Edge, aby korzystać z najnowszych funkcji, aktualizacji zabezpieczeń i pomocy technicznej.
- Artykuł
- Czas czytania: 18 min
Ważne
System. CommandLine
jest obecnie dostępna w wersji zapoznawczej, a ta dokumentacja dotyczy wersji 2. 0 beta 4.Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed jego wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
W tym artykule opisano składnię wiersza polecenia, która System. CommandLine
rozpoznaje. Te informacje będą przydatne dla użytkowników, a także dla deweloperów aplikacji wiersza polecenia platformy. NET, w tym interfejsu wiersza polecenia platformy. NET.
Tokeny
System. CommandLine
analizuje dane wejściowe wiersza polecenia w tokenach, które są ciągami rozdzielanymi spacjami. Rozważmy na przykład następujący wiersz polecenia:
dotnet tool install dotnet-suggest --global --verbosity quiet
Te dane wejściowe są analizowane przez aplikację dotnet
do tokenów tool
, install
, dotnet-suggest
, --global
, --verbosity
i quiet
.
Tokeny są interpretowane jako polecenia, opcje lub argumenty. Wywoływana aplikacja wiersza polecenia określa sposób interpretowania tokenów po pierwszym z nich. W poniższej tabeli przedstawiono sposób System. CommandLine
interpretacji poprzedniego przykładu:
Token | Analizowane jako | tool | Podpolecenie | install | dotnet-suggest | Argument polecenia install | --global | Opcja polecenia instalacji | --verbosity | quiet | Argument dla --verbosity opcji |
---|
Token może zawierać spacje, jeśli jest on ujęta w cudzysłów ("
). Oto przykład:
dotnet tool search "ef migrations add"Polecenia
Polecenie w danych wejściowych wiersza polecenia to token, który określa akcję lub definiuje grupę powiązanych akcji. Przykład:
- W
dotnet run
pliku run
to polecenie, które określa akcję. - W
dotnet tool install
pliku install
to polecenie, które określa akcję i tool
jest poleceniem określającym grupę powiązanych poleceń. Istnieją inne polecenia związane z narzędziem, takie jak tool uninstall
, tool list
i tool update
. Polecenia główne
Głównym poleceniem jest ten, który określa nazwę pliku wykonywalnego aplikacji. Na przykład dotnet
polecenie określa plik wykonywalny dotnet. exe.
Podpoleceń polecenia
Większość aplikacji wiersza polecenia obsługuje podpolecenia, znane również jako czasowniki. Na przykład dotnet
polecenie ma run
podpolecenia, które należy wywołać, wprowadzając polecenie dotnet run
.
Podpolecenia mogą mieć własne podpolecenia. W dotnet tool install
pliku install
jest podpolecenia tool
.
Opcje
Opcja to nazwany parametr, który można przekazać do polecenia. Konwencja POSIX ma prefiks nazwy opcji z dwoma łącznikami (--
). W poniższym przykładzie przedstawiono dwie opcje:
dotnet tool update dotnet-suggest --verbosity quiet --global^---------^ ^------^Jak pokazano w tym przykładzie, wartość opcji może być jawna (quiet
dla --verbosity
) lub niejawna (nic nie następuje). --global
Opcje, które nie mają określonej wartości, są zazwyczaj parametrami logicznymi domyślnymi, true
jeśli opcja jest określona w wierszu polecenia.
W przypadku niektórych aplikacji wiersza polecenia systemu Windows można zidentyfikować opcję przy użyciu wiodącego ukośnika (/
) z nazwą opcji. Przykład:
msbuild /version^------^System. CommandLine
obsługuje konwencje prefiksów POSIX i Windows. Podczas konfigurowania opcji należy określić nazwę opcji, w tym prefiks.
Argumenty
Argument jest wartością przekazywaną do opcji lub polecenia. W poniższych przykładach przedstawiono argument opcji verbosity
i argument polecenia build
.
^---^dotnet build myapp. csproj^----------^Argumenty mogą mieć wartości domyślne, które mają zastosowanie, jeśli nie podano jawnie argumentu. Na przykład wiele opcji jest niejawnie parametrami logicznymi z wartością domyślną true
, gdy nazwa opcji znajduje się w wierszu polecenia. Następujące przykłady wiersza polecenia są równoważne:
dotnet tool update dotnet-suggest --globaldotnet tool update dotnet-suggest --global true^-----------^Niektóre opcje mają wymagane argumenty. Na przykład w interfejsie wiersza polecenia --output
platformy. NET wymagany jest argument nazwy folderu. Jeśli argument nie zostanie podany, polecenie zakończy się niepowodzeniem.
Argumenty mogą mieć oczekiwane typy i System. CommandLine
wyświetla komunikat o błędzie, jeśli nie można przeanalizować argumentu w oczekiwanym typie. Na przykład następujące błędy polecenia, ponieważ wyrażenie "dyskretne" nie jest jedną z prawidłowych wartości dla --verbosity
elementu:
dotnet build --verbosity silentCannot parse argument 'silent' for option '-v' as expected type 'Microsoft. DotNet. Cli. VerbosityOptions'. Did you mean one of the following?DetailedDiagnosticMinimalNormalQuietArgumenty mają również oczekiwania dotyczące liczby wartości, które można podać. Przykłady znajdują się w sekcji dotyczącej arity argumentów.
Kolejność opcji i argumentów
Opcje można podać przed argumentami lub argumentami przed opcjami w wierszu polecenia. Następujące polecenia są równoważne:
dotnet add package System. CommandLine --prereleasedotnet add package --prerelease System. CommandLineOpcje można określić w dowolnej kolejności. CommandLine --prerelease --no-restore --source https://api. nuget. org/v3/index. jsondotnet add package System. CommandLine --source https://api. json --no-restore --prerelease
Jeśli istnieje wiele argumentów, kolejność ma znaczenie. Następujące polecenia nie muszą być równoważne:
myapp argument1 argument2myapp argument2 argument1Te polecenia przekazują listę z tymi samymi wartościami do kodu programu obsługi poleceń, ale różnią się one kolejnością wartości, co może prowadzić do różnych wyników.
Aliasy
W systemach POSIX i Windows niektóre polecenia i opcje mają aliasy. Są to zazwyczaj krótkie formularze, które są łatwiejsze do wpisywania. Aliasy mogą być również używane do innych celów, takich jak symulowanie braku uwzględniania wielkości liter i obsługa alternatywnych pisowni wyrazu.
Krótkie formularze POSIX zwykle mają jeden wiodący łącznik, po którym następuje pojedynczy znak. Następujące polecenia są równoważne:
dotnet build --verbosity quietdotnet build -v quietStandard GNU zaleca automatyczne aliasy. Oznacza to, że można wprowadzić dowolną część długiego polecenia lub nazwy opcji i zostanie zaakceptowana. To zachowanie spowoduje, że następujące wiersze polecenia będą równoważne:
dotnet publish --output. /publishdotnet publish --outpu. /publishdotnet publish --outp. /publishdotnet publish --out. /publishdotnet publish --ou. /publishdotnet publish --o. /publishSystem. CommandLine
nie obsługuje automatycznych aliasów.
Ważność wielkości liter
Nazwy poleceń i aliasów są domyślnie uwzględniane wielkość liter zgodnie z konwencją POSIX i System. CommandLine
są zgodne z tą konwencją. Jeśli chcesz, aby interfejs wiersza polecenia był niewrażliwy na wielkość liter, zdefiniuj aliasy dla różnych alternatyw wielkości liter. Na przykład --additional-probing-path
może mieć aliasy --Additional-Probing-Path
i --ADDITIONAL-PROBING-PATH
.
W niektórych narzędziach wiersza polecenia różnica w wielkości liter określa różnicę w funkcji. Na przykład git clean -X
zachowuje się inaczej niż git clean -x
. Interfejs wiersza polecenia platformy. NET ma małe litery.
Czułość wielkości liter nie ma zastosowania do wartości argumentów dla opcji opartych na wyliczeniach. Nazwy wyliczenia są dopasowywane niezależnie od wielkości liter.
--
Token
Konwencja POSIX interpretuje token podwójnej kreski (--
) jako mechanizm ucieczki. Wszystko, co następuje po tokenie podwójnej kreski, jest interpretowane jako argumenty polecenia. Ta funkcja może służyć do przesyłania argumentów, które wyglądają jak opcje, ponieważ uniemożliwia ich interpretowanie jako opcji.
Załóżmy, że aplikacja myapp przyjmuje message
argument i chcesz, aby wartość message
to --interactive
. Poniższy wiersz polecenia może dać nieoczekiwane wyniki.
myapp --interactiveJeśli myapp
nie ma --interactive
opcji, --interactive
token jest interpretowany jako argument. Jeśli jednak aplikacja ma --interactive
opcję, te dane wejściowe będą interpretowane jako odwołujące się do tej opcji.
Poniższy wiersz polecenia używa tokenu podwójnej kreski, aby ustawić wartość argumentu message
na wartość "--interactive":
myapp -- --interactive^^System. CommandLine
obsługuje tę funkcję podwójnej kreski.
Ograniczniki argumentów opcji
System. CommandLine
umożliwia użycie spacji, "=" lub ":" jako ogranicznika między nazwą opcji a jego argumentem. Na przykład następujące polecenia są równoważne:
dotnet build -v quietdotnet build -v=quietdotnet build -v:quietKonwencja POSIX pozwala pominąć ogranicznik podczas określania aliasu opcji pojedynczego znaku. Na przykład następujące polecenia są równoważne:
myapp -vquietmyapp -v quietSystem. CommandLine domyślnie obsługuje tę składnię.
Arity argumentów
Arity opcji lub argument polecenia jest liczbą wartości, które można przekazać, jeśli ta opcja lub polecenie jest określone.
Arity jest wyrażana przy użyciu wartości minimalnej i wartości maksymalnej, jak pokazano w poniższej tabeli:
Min. Maks. Przykładowa ważność Przykład 0 Prawidłowe: --Plik Nieprawidłowy: --file a. json --file a. json --file b. json 1 --Flaga --flaga true --flaga false --flaga false --flaga false n --file a. json b. json System. CommandLine
ArgumentArity ma strukturę do definiowania arity z następującymi wartościami:
Zero - Brak dozwolonych wartości. ZeroOrOne — Może mieć jedną wartość, może nie mieć wartości. exactlyone#system-commandline-argumentarity-exactlyone" data-linktype="absolute-path">ExactlyOne - Musi mieć jedną wartość. zeroormore#system-commandline-argumentarity-zeroormore" data-linktype="absolute-path">ZeroOrMore — Może mieć jedną wartość, wiele wartości lub brak wartości. oneormore#system-commandline-argumentarity-oneormore" data-linktype="absolute-path">OneOrMore — Może mieć wiele wartości, musi mieć co najmniej jedną wartość. Arity często można wywnioskować z typu. Na przykład int
opcja ma wartość, a List<int>
opcja ma wartość ExactlyOne
arity OneOrMore
.
Przesłonięcia opcji
Jeśli wartość maksymalna arity wynosi 1, nadal można skonfigurować tak, System. CommandLine
aby akceptowała wiele wystąpień opcji. W takim przypadku ostatnie wystąpienie powtarzanej opcji zastępuje wszystkie wcześniejsze wystąpienia. W poniższym przykładzie wartość 2 zostanie przekazana do myapp
polecenia.
myapp --delay 3 --message example --delay 2Wiele argumentów
Jeśli wartość maksymalna arity jest więcej niż jedna, można skonfigurować tak, System. CommandLine
aby akceptowała wiele argumentów dla jednej opcji bez powtarzania nazwy opcji.
W poniższym przykładzie lista przekazana do myapp
polecenia będzie zawierać "a", "b", "c" i "d":
myapp --list a b c --list dTworzenie pakietów opcji
PoSIX zaleca obsługę łączenia opcji jednoznakowych, znanych również jako stos. Opcje w pakiecie to aliasy opcji jednoznakowych określone razem po prefiksie pojedynczego łącznika. Tylko ostatnia opcja może określić argument. Na przykład następujące wiersze polecenia są równoważne:
git clean -f -d -xgit clean -fdxJeśli argument zostanie podany po pakiecie opcji, ma zastosowanie do ostatniej opcji w pakiecie. Następujące wiersze polecenia są równoważne:
myapp -a -b -c argmyapp -abc argW obu wariantach w tym przykładzie argument arg
będzie miał zastosowanie tylko do opcji -c
.
Opcje logiczne (flagi)
Jeśli true
opcja bool
o argumencie jest przekazywana lub false
jest przekazywana, jest analizowana zgodnie z oczekiwaniami. Jednak opcja, której typ argumentu jest bool
zwykle nie wymaga określenia argumentu. Opcje logiczne, czasami nazywane "flagami", zwykle mają pobudzenie. ZeroOrOne Obecność nazwy opcji w wierszu polecenia, bez argumentu po nim, powoduje wartość domyślną. true
Brak nazwy opcji w danych wejściowych wiersza polecenia powoduje wartość. false
myapp
Jeśli polecenie wyświetli wartość opcji logicznej o nazwie --interactive
, następujące dane wejściowe tworzą następujące dane wyjściowe:
myappmyapp --interactivemyapp --interactive falsemyapp --interactive trueFalseTrueFalseOpcja --help
Aplikacje wiersza polecenia zwykle udostępniają opcję wyświetlania krótkiego opisu dostępnych poleceń, opcji i argumentów. System. CommandLine
automatycznie generuje dane wyjściowe pomocy. Przykład:
dotnet list --helpDescription:List references or packages of a. NET project.Usage:dotnet [options] list [<PROJECT | SOLUTION>] [command]Arguments:<PROJECT | SOLUTION> The project or solution file to operate on. If a file is not specified, the command will search the current directory for one.Options:-?, -h, --help Show command line help.Commands:package List all package references of the project or solution.reference List all project-to-project references of the project.Użytkownicy aplikacji mogą być przyzwyczajeni do różnych sposobów żądania pomocy na różnych platformach, więc aplikacje oparte na odpowiedzi na System. CommandLine
wiele sposobów żądania pomocy. Wszystkie następujące polecenia są równoważne:
dotnet --helpdotnet -hdotnet /hdotnet -?dotnet /?Dane wyjściowe pomocy niekoniecznie pokazują wszystkie dostępne polecenia, argumenty i opcje. Niektóre z nich mogą być ukryte, co oznacza, że nie są wyświetlane w danych wyjściowych pomocy, ale można je określić w wierszu polecenia.
Opcja --version
Aplikacje utworzone automatycznie System. CommandLine
udostępniają numer wersji w odpowiedzi na --version
opcję używaną z poleceniem głównym. Przykład:
dotnet --version6. 0. 100Pliki odpowiedzi
Plik odpowiedzi to plik zawierający zestaw tokenów dla aplikacji wiersza polecenia. Pliki odpowiedzi są funkcją, która jest przydatna System. CommandLine
w dwóch scenariuszach:
Aby wywołać aplikację wiersza polecenia, określając dane wejściowe, które są dłuższe niż limit znaków terminalu. Aby wielokrotnie wywoływać to samo polecenie bez ponownego pisania całego wiersza. Aby użyć pliku odpowiedzi, wprowadź nazwę pliku poprzedzoną znakiem @
wszędzie tam, gdziekolwiek w wierszu chcesz wstawić polecenia, opcje i argumenty. Rozszerzenie pliku rsp jest wspólną konwencją, ale można użyć dowolnego rozszerzenia pliku.
Następujące wiersze są równoważne:
dotnet build --no-restore --output. /build-output/dotnet @sample1. rspdotnet build @sample2. rsp --output. /build-output/Zawartość pliku sample1. rsp:
build--no-restore--output. /build-output/Zawartość pliku sample2. rsp:
--no-restorePoniżej przedstawiono reguły składni, które określają, jak tekst w pliku odpowiedzi jest interpretowany:
Tokeny są rozdzielane spacjami. Wiersz zawierający dzień dobry! jest traktowany jako dwa tokeny, Dzień dobry i poranek! . Wiele tokenów ujęta w cudzysłów jest interpretowanych jako pojedynczy token. Wiersz zawierający "Dzień dobry! " jest traktowany jako jeden token, Dzień dobry! . Dowolny tekst między symbolem #
a końcem wiersza jest traktowany jako komentarz i ignorowany. Tokeny poprzedzone prefiksem @
mogą odwoływać się do dodatkowych plików odpowiedzi. Plik odpowiedzi może zawierać wiele wierszy tekstu. Wiersze są łączone i interpretowane jako sekwencja tokenów. Dyrektyw
System. CommandLine
wprowadza element składniowy nazywany dyrektywą. Dyrektywa [parse]
jest przykładem. Po dołączeniu [parse]
nazwy System. CommandLine
aplikacji zostanie wyświetlony diagram wyniku analizy zamiast wywołania aplikacji wiersza polecenia:
dotnet [parse] build --no-restore --output. /build-output/^-----^[ dotnet [ build [ --no-restore <True>] [ --output <. /build-output/>]]]Celem dyrektyw jest zapewnienie funkcji krzyżowych, które mogą być stosowane w aplikacjach wiersza polecenia. Ponieważ dyrektywy są składniowo odrębne od własnej składni aplikacji, mogą zapewnić funkcjonalność, która ma zastosowanie w aplikacjach.
Dyrektywa musi być zgodna z następującymi regułami składni:
Jest to token w wierszu polecenia, który pochodzi po nazwie aplikacji, ale przed wszelkimi podpoleceniami lub opcjami. Jest ujęta w nawiasy kwadratowe. Nie zawiera spacji. Nierozpoznana dyrektywa jest ignorowana bez powodowania błędu analizy.
Dyrektywa może zawierać argument oddzielony od nazwy dyrektywy dwukropkiem.
Wbudowane są następujące dyrektywy:
[parse]
[suggest]
Dyrektywa [parse]
Zarówno użytkownicy, jak i deweloperzy mogą okazać się przydatne, aby zobaczyć, jak aplikacja zinterpretuje dane wejściowe. Jedną z domyślnych System. CommandLine
funkcji aplikacji jest [parse]
dyrektywa, która umożliwia wyświetlenie podglądu wyniku analizy danych wejściowych polecenia. Przykład:
myapp [parse] --delay not-an-int --interactive --file filename. txt extra! [ myapp [ --delay! <not-an-int>] [ --interactive <True>] [ --file <filename. txt>] *[ --fgcolor <White>]]??? --> extraW powyższym przykładzie:
Polecenie (myapp
), jego opcje podrzędne i argumenty do tych opcji są pogrupowane przy użyciu nawiasów kwadratowych. W przypadku wyniku [ --delay! <not-an-int>]
!
opcji element wskazuje błąd analizy. Nie można przeanalizować wartości not-an-int
opcji int
do oczekiwanego typu. Błąd jest również oflagowany !
przed poleceniem zawierającym błędną opcję: ! [ myapp...
. W przypadku wyniku *[ --fgcolor <White>]
opcji opcja nie została określona w wierszu polecenia, więc użyto skonfigurowanej wartości domyślnej. White
jest efektywną wartością dla tej opcji. Gwiazdka wskazuje, że wartość jest wartością domyślną. ??? -->
wskazuje dane wejściowe, które nie były zgodne z żadnymi poleceniami lub opcjami aplikacji. Dyrektywa [suggest]
Dyrektywa [suggest]
umożliwia wyszukiwanie poleceń, gdy nie znasz dokładnego polecenia.
dotnet [suggest] builbuild-servermsbuildWskazówki dotyczące projektowania
W poniższych sekcjach przedstawiono wskazówki, które zalecamy wykonać podczas projektowania interfejsu wiersza polecenia. Zastanów się, czego oczekuje twoja aplikacja w wierszu polecenia, podobnie jak oczekiwano serwera interfejsu API REST w adresie URL. Spójne reguły dla interfejsów API REST są tym, co sprawia, że są łatwo użyteczne dla deweloperów aplikacji klienckich. W ten sam sposób użytkownicy aplikacji wiersza polecenia będą mieli lepsze środowisko, jeśli projekt interfejsu wiersza polecenia jest zgodny z typowymi wzorcami.
Po utworzeniu interfejsu wiersza polecenia trudno jest zmienić, zwłaszcza jeśli użytkownicy używali interfejsu wiersza polecenia w skryptach, których oczekują, że będą działać. Wytyczne te zostały opracowane po interfejsie wiersza polecenia platformy. NET i nie zawsze są zgodne z tymi wytycznymi. Aktualizujemy interfejs wiersza polecenia platformy. NET, w którym można to zrobić bez wprowadzania zmian powodujących niezgodność. Przykładem tej pracy jest nowy projekt dla dotnet new
platformy. NET 7.
Polecenia i polecenia podrzędne
Jeśli polecenie ma podpolecenia, polecenie powinno działać jako obszar lub identyfikator grupowania dla podpolecenia, zamiast określać akcję. Po wywołaniu aplikacji należy określić polecenie grupowania i jedno z jego podpolecenia. Na przykład spróbuj uruchomić dotnet tool
polecenie i zostanie wyświetlony komunikat o błędzie, ponieważ tool
polecenie identyfikuje tylko grupę poleceń podrzędnych związanych z narzędziami, takich jak install
i list
. Można uruchomić polecenie dotnet tool install
, ale dotnet tool
samo w sobie byłoby niekompletne.
Jednym ze sposobów definiowania obszarów ułatwia użytkownikom organizowanie danych wyjściowych pomocy.
W interfejsie wiersza polecenia często występuje niejawny obszar. Na przykład w interfejsie wiersza polecenia platformy. NET niejawny obszar to projekt, a w interfejsie wiersza polecenia platformy Docker jest to obraz. W związku z tym można używać dotnet build
bez uwzględniania obszaru. Zastanów się, czy interfejs wiersza polecenia ma niejawny obszar. Jeśli tak, rozważ, czy zezwolić użytkownikowi na opcjonalne dołączanie lub pomijanie go w taki sposób, jak i docker build
docker image build
. Jeśli opcjonalnie zezwolisz na wpisywanie niejawnego obszaru przez użytkownika, możesz również automatycznie uzyskać pomoc i uzupełnianie kart dla tego grupowania poleceń. Podaj opcjonalne użycie niejawnej grupy, definiując dwa polecenia, które wykonują tę samą operację.
Opcje jako parametry
Opcje powinny zawierać parametry poleceń, a nie same akcje. Jest to zalecana zasada projektowania, chociaż nie zawsze System. CommandLine
następuje po niej (--help
wyświetla informacje pomocy).
Aliasy krótkich formularzy
Ogólnie rzecz biorąc, zalecamy zminimalizowanie liczby zdefiniowanych aliasów opcji krótkiej.
W szczególności unikaj używania dowolnego z następujących aliasów inaczej niż ich typowe użycie w interfejsie wiersza polecenia platformy. NET i innych aplikacjach wiersza polecenia platformy. NET:
-i
dla --interactive
.
Ta opcja sygnalizuje użytkownikowi, że może zostać wyświetlony monit o podanie danych wejściowych do pytań, na które musi odpowiedzieć polecenie. Na przykład monit o podanie nazwy użytkownika. Interfejs wiersza polecenia może być używany w skryptach, dlatego należy zachować ostrożność w monitowaniu użytkowników, którzy nie określili tego przełącznika.
-o
dla --output
.
Niektóre polecenia generują pliki w wyniku ich wykonania. Ta opcja powinna służyć do określenia lokalizacji tych plików. W przypadku utworzenia pojedynczego pliku ta opcja powinna być ścieżką pliku. W przypadkach, w których jest tworzonych wiele plików, ta opcja powinna być ścieżką katalogu.
-v
dla --verbosity
.
Polecenia często zapewniają użytkownikowi dane wyjściowe w konsoli programu; Ta opcja służy do określania ilości danych wyjściowych żądań użytkownika. Aby uzyskać więcej informacji, zobacz --verbosity
opcję w dalszej części tego artykułu.
Istnieją również aliasy z typowym użyciem ograniczonym do interfejsu wiersza polecenia platformy. NET. Możesz użyć tych aliasów do innych opcji w aplikacjach, ale należy pamiętać o możliwości pomyłek.
-c
For --configuration
Ta opcja często odwołuje się do nazwanej konfiguracji kompilacji, takiej jak Debug
lub Release
. Możesz użyć dowolnej nazwy konfiguracji, ale większość narzędzi oczekuje jednej z tych opcji. To ustawienie jest często używane do konfigurowania innych właściwości w sposób, który ma sens dla tej konfiguracji — na przykład robi mniej optymalizacji kodu podczas kompilowania Debug
konfiguracji. Rozważ tę opcję, jeśli polecenie ma różne tryby działania.
-f
For --framework
Ta opcja służy do wybierania pojedynczej platformy docelowej Moniker (TFM) do wykonania, więc jeśli aplikacja interfejsu wiersza polecenia ma inne zachowanie w zależności od wybranego programu TFM, należy obsługiwać tę flagę.
-p
For --property
Jeśli aplikacja w końcu wywołuje program MSBuild, użytkownik często będzie musiał dostosować to wywołanie w jakiś sposób. Ta opcja umożliwia podanie właściwości MSBuild w wierszu polecenia i przekazanie ich do bazowego wywołania MSBuild. Jeśli aplikacja nie używa programu MSBuild, ale potrzebuje zestawu par klucz-wartość, rozważ użycie tej samej nazwy opcji, aby skorzystać z oczekiwań użytkowników.
-r
For --runtime
Jeśli aplikacja może działać w różnych środowiskach uruchomieniowych lub ma logikę specyficzną dla środowiska uruchomieniowego, rozważ obsługę tej opcji jako sposób określania identyfikatora środowiska uruchomieniowego. Jeśli aplikacja obsługuje środowisko uruchomieniowe, rozważ obsługę --os
, a --arch
także. Te opcje umożliwiają określenie tylko systemu operacyjnego lub części architektury identyfikatora RID, pozostawiając część nieokreśloną do określenia z bieżącej platformy. Aby uzyskać więcej informacji, zobacz dotnet publish..
Krótkie nazwy
Wprowadź nazwy poleceń, opcji i argumentów tak krótko, jak to tylko możliwe. Jeśli na przykład jest wystarczająco jasne, class
nie należy wykonywać polecenia classification
.
Małe nazwy
Zdefiniuj nazwy tylko małymi literami, z wyjątkiem tworzenia wielkich aliasów, aby nie uwzględniać wielkości liter poleceń lub opcji.
Nazwy przypadków Kebab
Użyj wielkości liter kebabu, aby odróżnić wyrazy. Na przykład --additional-probing-path
.
Pluralizacja
W aplikacji należy zachować spójność w liczbie mnogiej. Na przykład nie należy mieszać nazw w liczbie mnogiej i pojedynczej dla opcji, które mogą mieć wiele wartości (maksymalna wartość arity większa niż jedna):
Nazwy opcji Spójność --additional-probing-paths
i --sources
✔️ --additional-probing-path
i --source
--additional-probing-paths
i --source
❌ --additional-probing-path
i --sources
Czasowniki a czasowniki
Użyj czasowników, a nie rzeczowników dla poleceń odwołujących się do akcji (tych bez podpolecenia pod nimi), na przykład: dotnet workload remove
, a nie dotnet workload removal
. Użyj rzeczowników, a nie czasowników dla opcji, na przykład: --configuration
, a nie --configure
.
Opcja --verbosity
System. CommandLine
aplikacje zazwyczaj oferują --verbosity
opcję, która określa, ile danych wyjściowych jest wysyłanych do konsoli. Oto pięć standardowych ustawień:
Q[uiet]
M[inimal]
N[ormal]
D[etailed]
Diag[nostic]
Są to nazwy standardowe, ale istniejące aplikacje czasami są używane Silent
zamiast Quiet
, i Trace
, Debug
lub Verbose
zamiast Diagnostic
.
Każda aplikacja definiuje własne kryteria, które określają, co jest wyświetlane na każdym poziomie. Zazwyczaj aplikacja wymaga tylko trzech poziomów:
Quiet Normalne Diagnostyka Jeśli aplikacja nie potrzebuje pięciu różnych poziomów, opcja powinna nadal definiować te same pięć ustawień. W takim przypadku Minimal
i Normal
spowoduje wygenerowanie tych samych danych wyjściowych i Diagnostic
Detailed
będzie również takie same. Dzięki temu użytkownicy mogą po prostu wpisać to, co znają, a najlepsze dopasowanie będzie używane.
Quiet
Oczekuje się, że w konsoli nie są wyświetlane żadne dane wyjściowe. Jeśli jednak aplikacja oferuje tryb interaktywny, aplikacja powinna wykonać jedną z następujących alternatyw:
Wyświetla monity o podanie danych wejściowych, jeśli --interactive
jest określony, nawet jeśli --verbosity
ma wartość Quiet
. Nie zezwalaj na używanie elementów --verbosity Quiet
i --interactive
razem. W przeciwnym razie aplikacja będzie czekać na dane wejściowe bez informowania użytkownika, na co czeka. Zostanie wyświetlone, że aplikacja zamarła, a użytkownik nie będzie miał pojęcia, że aplikacja czeka na dane wejściowe.
Jeśli zdefiniujesz aliasy, należy użyć dla i -v
--verbosity
bez -v
argumentu aliasu dla. --verbosity Diagnostic
Użyj dla. -q
--verbosity Quiet
Konwencje interfejsu wiersza polecenia platformy. NET i POSIX
Interfejs wiersza polecenia platformy. NET nie jest konsekwentnie przestrzegać wszystkich konwencji POSIX.
Podwójna kreska
Kilka poleceń w interfejsie wiersza polecenia platformy. NET ma specjalną implementację tokenu podwójnej kreski. W przypadku dotnet run
następujących tokenów --
, dotnet watch
i dotnet tool run
są przekazywane do aplikacji uruchamianej za pomocą polecenia. Przykład:
dotnet run --project. /myapp. csproj -- --message "Hello world! "W tym przykładzie --project
opcja jest przekazywana do dotnet run
polecenia, a --message
opcja z jej argumentem jest przekazywana jako opcja wiersza polecenia do aplikacji myapp po jej uruchomieniu.
Token --
nie zawsze jest wymagany do przekazywania opcji do aplikacji uruchamianych przy użyciu polecenia dotnet run
. Bez podwójnej kreski polecenie automatycznie przekazuje do aplikacji uruchamianej dotnet run
wszelkie opcje, które nie są rozpoznawane jako stosowane do samego siebie lub do dotnet run
programu MSBuild. Dlatego następujące wiersze polecenia są równoważne, ponieważ dotnet run
nie rozpoznaje argumentów i opcji:
dotnet run -- quotes read --delay 0 --fg-color reddotnet run quotes read --delay 0 --fg-color redPominięcie ogranicznika opcji do argumentu
Interfejs wiersza polecenia platformy. NET nie obsługuje konwencji POSIX, która umożliwia pominięcie ogranicznika podczas określania aliasu opcji pojedynczego znaku.
Wiele argumentów bez powtarzania nazwy opcji
Interfejs wiersza polecenia platformy. NET nie akceptuje wielu argumentów dla jednej opcji bez powtarzania nazwy opcji.
Opcje logiczne
W interfejsie wiersza polecenia platformy. NET niektóre opcje logiczne powodują takie samo zachowanie po przekazaniu false
polecenia, jak w przypadku przekazania true
elementu. To zachowanie powoduje, gdy kod interfejsu wiersza polecenia platformy. NET, który implementuje opcję, sprawdza tylko obecność lub brak opcji, ignorując wartość. Przykładem jest --no-restore
polecenie dotnet build
. Przekaż no-restore false
i operacja przywracania zostanie pominięta tak samo jak w przypadku określenia no-restore true
lub no-restore
.
Przypadek kebab
W niektórych przypadkach interfejs wiersza polecenia platformy. NET nie używa wielkości liter kebab dla nazw poleceń, opcji ani argumentów. Na przykład istnieje opcja interfejsu wiersza polecenia platformy. NET o nazwie --additionalprobingpath
zamiast --additional-probing-path
.
Zobacz też
Wskazówki dotyczące projektowania interfejsu wiersza polecenia typu open source Standardy GNU System. CommandLine Przegląd Samouczek: wprowadzenie do usługi System. CommandLine