Como posso passar nomes de arquivos para scripts?
Um script que processa arquivos específicos é útil como um registro do que você fez, mas um que permite processar qualquer arquivo que você queira é mais útil.
Para isso,
você pode usar a expressão especial $@ (cifrão seguido pelo sinal de arroba)
para significar "todos os parâmetros da linha de comando fornecidos ao script".
Por exemplo, se unique-lines.sh contiver sort $@ | uniq, quando você executar:
bash unique-lines.sh seasonal/summer.csv
o shell substitui $@ por seasonal/summer.csv e processa um arquivo. Se você executar isso:
bash unique-lines.sh seasonal/summer.csv seasonal/autumn.csv
ele processa dois arquivos de dados, e assim por diante.
Como lembrete, para salvar o que você escreveu no Nano, digite Ctrl + O para gravar o arquivo, depois Enter para confirmar o nome do arquivo e, em seguida, Ctrl + X para sair do editor.
Este exercício faz parte do curso
Introdução ao Shell
Exercício interativo prático
Transforme a teoria em ação com um de nossos exercícios interativos
Começar o exercício