Como passar argumentos da linha de comando em Node.js?

Como Passar Argumentos Da Linha De Comando Em Node Js



Em alguns casos, o usuário precisa passar informações adicionais para configurar a aplicação Node.js durante seu processo de inicialização a partir da linha de comando. Para isso, o usuário passa essa informação com o comando de execução “ ”em vez de escrevê-lo no externo “.js” arquivo no qual todo o código-fonte é escrito. Essas informações podem ser uma string, números, argumentos e muito mais.

Esta postagem listará todos os aspectos possíveis para passar argumentos da linha de comando no Node.js.







Pré-requisitos: Antes de passar para a implementação prática de qualquer método, primeiro crie um arquivo “. js ”Arquivo de qualquer nome e escreva todo o código-fonte nele. Aqui, criamos um “ índice .js” arquivo.



Como passar argumentos da linha de comando em Node.js?

Para passar argumentos da linha de comando use o “ processo .argv” propriedade. O ' argumento ”É a propriedade interna do“ processo ”Módulo que é usado para passar os argumentos da linha de comando durante a execução do aplicativo Node.js usando o“ ” comando.



Sintaxe

A sintaxe generalizada do “ processo A propriedade .argv” está escrita aqui:





processo. argumento

Parâmetros: O ' processo .argv” é uma propriedade que não suporta nenhum parâmetro.

Valor de retorno: O ' processo A propriedade .argv” fornece um array como saída padrão que contém os seguintes elementos:



  • processo.argv[0]: Representa o caminho do arquivo executável.
  • processo.argv[1]: Denota o caminho do “. js ' arquivo.
  • processo.argv[2]: Ele especifica o primeiro argumento que é passado junto com o “ ” comando.
  • processo.argv[3]: Ele especifica o segundo argumento que é passado junto com o “ ” comando.

Observação : Os dois primeiros elementos são sempre exibidos por padrão ao usar o “processo.argv” propriedade mesmo que o usuário não passe nenhum argumento.

Agora, aplique o “ processo .argv” praticamente para passar argumentos da linha de comando.

Exemplo 1: Aplicando a propriedade “process.argv” para passar argumentos de string na linha de comando

Este exemplo aplica o “ processo.argv ”Propriedade para passar strings como argumentos da linha de comando com a ajuda do bloco de código fornecido abaixo:

para ( deixe eu = 0 ; eu < processo. argumento . comprimento ; ++ eu ) {
console. registro ( `índice $ { eu } argumento -> $ { processo. argumento [ eu ] } ` ) ;
}

Nas linhas de código acima:

  • O ' para ”O loop é definido com uma instrução inicializada, uma condição e uma instrução de incremento.
  • No ' para ”Condição do loop, o“ processo.argv ”propriedade é concatenada com o“ comprimento ”Propriedade para obter cada valor de argumento passado junto com o“ ” comando.
  • Dentro de ' para ”loop, o“ console.log() ”O método exibe cada valor do argumento junto com seu índice.

Saída

Execute o “ índice .js” usando o seguinte comando e também passe as strings como argumento com ele:

índice do nó. js Bem vindo ao Linuxhint

A saída a seguir mostra primeiro o executável e o arquivo “. js ”o caminho do arquivo e, em seguida, exibe as strings que são passadas como argumentos junto com seus índices:

Exemplo 2: Aplicando a propriedade “process.argv” para adicionar dois números passados ​​​​como argumentos

Este exemplo executa uma operação de adição aritmética em dois números que são passados ​​como argumentos:

era argumentos = processo. argumento
função adicionar ( a , b ) {
retornar analisarInt ( a ) + analisarInt ( b )
}
era soma = adicionar ( argumentos [ 2 ] , argumentos [ 3 ] )
console. registro ( 'Adição de 1, 9 é' , soma )

No trecho de código acima:

  • O ' argumentos ”variável utiliza o“ processo Propriedade .argv” para obter argumentos da linha de comando.
  • A seguir, o “ adicionar ()” função com “ a” e “b ”parâmetros aplica o“ analisarInt ()”método que analisa o valor inserido pelo usuário como uma string e recupera o primeiro número inteiro.
  • Depois disso, o “ soma ”variável chama o“ adicionar ()” passando a função “ argumento [2]”, e o “ argumento [3]” do “ processo .argv” propriedade.
  • Por último, o “ console O método .log()” exibe o “ soma ”Valores de variáveis ​​como o primeiro e o segundo elementos da matriz retornada.

Saída

Inicie o “ índice .js” e passe os números como argumentos que o usuário deseja adicionar:

índice do nó. js 1 9

A saída mostra a adição dos dois números que são passados ​​como argumentos durante a execução do aplicativo Node.js:

Exemplo 3: Aplicando a propriedade “process.argv” para imprimir apenas argumentos passados

Este exemplo exclui os dois primeiros elementos padrão da matriz retornada do “ progresso .argv” e imprime todos os argumentos passados:

const argumentos = processo. argumento . fatiar ( 2 ) ;
argumentos. para cada ( ( valor , índice ) => {
console. registro ( índice , valor ) ;
} ) ;

A explicação das linhas de código acima é a seguinte:

  • Em primeiro lugar, o “ argumentos ”variável aplica o“ processo .argv” junto com a propriedade “ fatiar ()”método para excluir os dois primeiros elementos do array retornado.
  • A seguir, o “ para cada ()” passa uma função de seta com o “ valor ' e ' índice ”Como seu primeiro e segundo argumentos, respectivamente. Ele exibirá todos os elementos do array um por um na tela de saída.
  • Por último, o “ console O método .log()” exibe o valor de “ índice ', e ' valor ”parâmetros.

Saída

Execute o “ índice .js” e também passe os argumentos de string com o comando indicado abaixo:

índice do nó. js Bem vindo ao Linuxhint

Agora, a saída abaixo mostra apenas os argumentos passados ​​junto com seus índices:

Trata-se de passar argumentos da linha de comando.

Conclusão

Node.js oferece o “ processo .argv” para passar os argumentos pelo usuário na linha de comando. Esta propriedade fornece um array que contém o executável e o arquivo “. js ”caminho do arquivo no“ ' e a ' ”Índices e os argumentos passados ​​​​no“ ' e ' ”índices. Esta propriedade permite que os usuários passem valores de string e numéricos como argumentos da linha de comando. Esta postagem explicou praticamente todos os aspectos possíveis da passagem de argumentos da linha de comando no Node.js.