1
resposta

Salvando dados de analise

...

num_palavras=$(wc -w < "${arquivo}.unico")
num_linhas=$(wc -l < "$(arquivo).unico") #esta errado esse comado na transcrição da aula, arrumem isso para {}, por favor!   

nome_arquivo=$(basename "${arquivo}.unico")

echo "Arquivo: $nome_arquivo" >> log_stats.txt
echo "Número de linhas: $num_linhas" >> log_stats.txt
echo "Número de palavras: $num_palavras" >> log_stats.txt
echo "--------------------------" >> log_stats.txt

done

1 resposta

Olá, Rogerio!

O problema está na linha onde você tenta contar o número de linhas de um arquivo. Você mencionou que a transcrição da aula está errada e deveria usar {} em vez de (). Vamos corrigir isso!

A linha que você apontou está assim:

num_linhas=$(wc -l < "$(arquivo).unico")

E a correção sugerida é usar {} para a variável arquivo:

num_linhas=$(wc -l < "${arquivo}.unico")

Com essa correção, o script deve funcionar corretamente, contando o número de linhas do arquivo especificado. Lembre-se de sempre usar {} ao referenciar variáveis em scripts bash, pois isso ajuda a evitar ambiguidades.

Bons estudos!