Jak przeanalizować argumenty wiersza poleceń w węźle.JS

Jak przeanalizować argumenty wiersza poleceń w węźle.JS

Węzeł.JS to oparty na wydarzeniach, open source i asynchroniczny ramy we/wy, które wykorzystują silnik JavaScript Google V8. Używamy go do tworzenia aplikacji, które używają JavaScript zarówno po stronie serwera, jak i klientów. Węzeł.Aplikacje JS są napisane w JavaScript.

Węzeł.Aplikacje JS akceptują również argumenty wiersza polecenia, takie jak każdy inny język programowania. Domyślnie węzeł.JS jest w stanie obsłużyć twoje argumenty, ale jeśli chcesz dodatkowe funkcje, możesz użyć narzędzi i pakietów innych firm, takich jak YARGS I minimistyczne. W tym artykule zobaczymy, w jaki sposób możesz przeanalizować argumenty wiersza poleceń w węźle.JS za pomocą proces.Argv, YARGS, I minimistyczne.

Jakie są argumenty wiersza poleceń?

Argument wiersza polecenia to ciąg dodatkowych informacji lub poleceń, które są przekazywane do programu podczas uruchamiania go przez interfejs wiersza poleceń (CLI) systemu operacyjnego. Argumenty te zwykle zawierają informacje używane do ustawiania wartości właściwości lub konfiguracji dla aplikacji.

W węźle.JS, wszystkie argumenty wiersza poleceń podane do powłoki są przekazywane do procesu w tablicy zwanej „Wartościami argumentów (argv).„Później węzeł.JS korzysta z tej tablicy dla każdego działającego procesu w formie procesu.argv lub możesz powiedzieć, że argumenty są domyślnie przechowywane w tym procesie.Argv.

Dlaczego warto używać argumentów wiersza poleceń?

Argumenty wiersza poleceń są bardzo elastyczne, ponieważ są przekazywane jako ciągi do twojego programu, a typy danych String można łatwo przekonwertować na inne typy.

Pozwala przekazać informacje do aplikacji przed jej uruchomieniem, a także możesz przekazać nieograniczoną liczbę argumentów za pośrednictwem linii poleceń.

Jaka jest przykładowa składnia argumentów wiersza poleceń?

Oto przykład składni, jak wyglądają argumenty wiersza poleceń:

 [Runtime] [Script_name] [Argument-1 Argument-2 Argument-3… Argument-N] 

Argumenty są oddzielone przestrzenią, a czas wykonywania może być czymś w rodzaju SH, Java, Węzło itp.

Jak przeanalizować argumenty wiersza poleceń w węźle.JS

Tutaj najpierw zobaczymy, aby przeanalizować argumenty za pomocą proces.Argv a później z YARGS I minimistyczne.

1. Parsuj argumenty za pomocą procesu.Argv

Za pomocą proces.Argv to najprostszy sposób analizowania argumentów w węźle.JS i nie musisz instalować do tego dodatkowego pakietu ani biblioteki. Po prostu przekazujesz argumenty do węzła.aplikacja JS i te argumenty są obsługiwane przez proces.Argv domyślnie.

Istnieją trzy podstawowe elementy procesu.Argv Array:

  • Po pierwsze, ścieżka systemu plików wskazująca na wykonywalny węzeł.
  • Po drugie, nazwa wykonywanego pliku JavaScript.
  • Po trzecie, pierwszy argument, który jest przekazywany przez użytkownika.

Przykład - Napiszemy prosty skrypt węzła, który wydrukuje wszystkie argumenty wiersza poleceń przekazane do aplikacji.

  • Utwórz plik o nazwie „Processargv.JS ' i wklej następujący kod. „Użyj ścisłego”; dla (niech j = 0; j ' + (proces.argv [j]));
    1234„Użyj ścisłego”; dla (niech j = 0; j < process.argv.length; j++) console.log(j + ' -> ' + (proces.argv [j]));

  • Teraz uruchom „processargv.JS 'Korzystanie z następującego polecenia, przekazując argument.
    Node processargv.JS Jestem węzłem  

    Tutaj przekazujemy trzy argumenty do pliku, w wyniku czego zobaczysz, że „i”, „am”, „węzeł” jest przechowywany odpowiednio w indeksach 2., 3. i 4. A wyjście będzie wyglądało tak:

2. Przekazywanie argumentów za pomocą YARGS

Yargs to węzeł.Moduł JS, który może pomóc w przekazywaniu argumentów. Pozwala przekazywać argumenty w postaci par kluczowych, a nawet możesz uzyskać dostęp do wartości argumentów w dalszej części programu za pomocą klawiszy.

  • Zainstaluj moduł Yargs za pomocą tego polecenia.
    NPM I YARGS  
  • Teraz zapisz poniższy kod w pliku o nazwie „Yargs.JS ' I podczas wykonywania programu zapewnimy wartości nazwy i wieku. „Użyj ścisłego”; const args = wymaga („YARGS”).argv; konsola.log („nazwa:” + args.nazwa); konsola.log („wiek:” + args.wiek);
    123456„Użyj ścisłego”; const args = wymaga („YARGS”).argv; konsola.log („nazwa:” + args.Nazwa); konsola.log („wiek:” + args.wiek);

  • Aby wykonać następujące polecenie, wykonaj następujący kod w wierszu. Przekazujemy wartości dla nazwy i wieku.
    Węzeł.js --name = node --age = 15  

    Wyjście będzie wyglądało tak:

Aby zrozumieć bardziej zaawansowane funkcje YARGS Odwiedź ten zaawansowany przewodnik.

3. Parsowanie argumentów za pomocą modułu minimistycznego

Inny sposób analizowania argumentów wiersza poleceń w węźle.Aplikacje JS są za pomocą modułu minimistycznego. Analizuje argumenty z procesu.argv tablica, a następnie przekazuje ją do łatwej w użyciu tablicy asocjacyjnej. Do dostępu do elementów za pomocą nazw indeksu można użyć tej tablicy asocjacyjnej.

  • Zainstaluj moduł minimistyczny za pomocą tego polecenia.
    NPM I minimist  
  • Teraz zapisz następujący skrypt wymieniony 'minimist.JS '. Tutaj używamy metody plasterek, która usunie wszystkie wcześniejsze elementy tablicy, zaczynając od indeksu przekazanego do niej jako parametru. „Użyj ścisłego”; const args = wymaga („minimist”) (proces.Argv.pokrój (2)); konsola.Log (args.I); konsola.Log (args.N);
    123456„Użyj ścisłego”; const args = wymaga („minimist”) (proces.Argv.pokrój (2)); konsola.Log (args.i); konsola.Log (args.N);

  • Przekazując argument, możemy również określić postać, dzięki której chcemy uzyskać dostęp do elementów. Tutaj określamy „ja” jako nazwę drugiego indeksu, a następnie „n” jako nazwę trzeciego indeksu. Lubię to:
    Minimistka węzła.JS -i Node -n 15  

    Wyjście będzie wyglądało tak:

Chociaż minimistyczne nie ma tak wielu bogatych funkcji jak YARGS Wciąż możesz go użyć, aby Twoja praca była łatwa. Aby uzyskać bardziej szczegółowe informacje o wizycie minimistów tutaj.

Wniosek

Parsowanie argumentów jest prostym i ważnym tematem, jeśli pracujesz nad węzłem.JS. Dostępnych jest wiele opcji, aby Twoja praca była łatwa. Wybierz więc zgodnie ze swoimi potrzebami, jeśli chcesz bogatych i zaawansowanych funkcji, a następnie idź YARGS W przeciwnym razie wybierz spośród proces.Argv I minimistyczne.