Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Caminho do arquivo

Se o terceiro 'valor' é o arquivo que queremos 'enviar' para dentro do array em questão não bastaria apenas executar essa linha de comando?

**node src/index.js arquivos/texto-web.txt **

Dito isso, qual a finalidade da criação da variável 'link' e de sua atribuição? Confesso que não ficou nada claro pra mim.

const link = caminhoArquivo[2]; 

console.log(link); 

Meu código gerando o mesmo resultado:

const caminhoArquivo = process.argv; // vetor de argumentos

console.log(caminhoArquivo[2]);

No terminal executei exatamente o mesmo comando:

node src/index.js arquivos/texto-web.txt

4 respostas

Oi Rosemberg! Como vai?

O que acontece é que process.argv captura todos os argumentos passados na linha de comando e os organiza em um array. O primeiro elemento desse array é o caminho para o Node.js, o segundo é o caminho para o arquivo index.js, e a partir do terceiro, estão os argumentos que você passa, como o caminho do arquivo de texto que você quer processar.

A variável link é criada para facilitar o acesso direto ao caminho do arquivo que você está interessado em manipular. Ao atribuir caminhoArquivo[2] a link, você está isolando o caminho do arquivo de texto que deseja processar, tornando o código mais legível e fácil de manter. Isso é especialmente útil se você precisar usar esse caminho várias vezes no seu código, evitando a repetição de caminhoArquivo[2] em vários lugares.

No seu exemplo, você já está acessando diretamente caminhoArquivo[2] no console.log(), o que é perfeitamente válido e resulta no mesmo valor. A criação da variável link é mais uma questão de clareza e organização do código.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Obrigado pelo retorno, Armano!

Então a vantagem está no "peso visual", certo? Além do que, atribuir a uma variável, nesse caso 'link', eu evitaria uma expressão 'mais verbosa' tecnicamente falando.

solução!

Oi, Rosemberg!

Sim, você entendeu corretamente — o comando que você executou:


node src/index.js arquivos/texto-web.txt

...já envia o caminho do arquivo como argumento. Mas a criação da variável link serve para dar nome e significado ao valor capturado. Veja:


const caminhoArquivo = process.argv;
const link = caminhoArquivo[2];

console.log(link);

Isso torna o código mais legível e manutenível, principalmente quando você precisar reutilizar o caminho do arquivo em outras partes do código. Usar link é mais claro do que repetir caminhoArquivo[2] toda hora, que é mais técnico e menos descritivo.

Fico à disposição.

Maravilha, Armano!

Obrigado!