Verificar a presença do arquivo com a saída do comando ls
Nesta etapa, você aprenderá outra maneira comum de verificar a presença de arquivos e diretórios: usando a saída do comando ls. O comando ls lista o conteúdo de um diretório. Ao combinar ls com outros comandos, você pode verificar efetivamente se um arquivo específico existe.
Primeiro, vamos listar o conteúdo do seu diretório atual (~/project) usando o comando ls.
Digite o seguinte comando e pressione Enter:
ls
Você deve ver my_file.txt listado na saída, como você o criou na etapa anterior.
my_file.txt
Agora, vamos tentar verificar especificamente por my_file.txt usando ls e o comando grep. grep é uma ferramenta poderosa para pesquisar padrões de texto. Podemos canalizar a saída de ls para grep para ver se o nome do arquivo aparece na lista.
O símbolo de pipe | pega a saída do comando à esquerda e a envia como entrada para o comando à direita.
Digite o seguinte comando e pressione Enter:
ls | grep my_file.txt
Se my_file.txt existir, grep o encontrará na saída de ls e imprimirá a linha contendo o nome do arquivo.
my_file.txt
Se o arquivo não existisse, grep não encontraria o padrão e não produziria nenhuma saída.
Semelhante ao comando test, você pode verificar o status de saída do comando grep para determinar se o arquivo foi encontrado. grep retorna 0 se encontrar uma correspondência e 1 se não encontrar.
Digite o seguinte comando e pressione Enter:
echo $?
Você deve ver 0, indicando que grep encontrou my_file.txt.
Agora, vamos tentar verificar o arquivo não existente novamente usando ls e grep.
Digite o seguinte comando e pressione Enter:
ls | grep non_existent_file.txt
Este comando não produzirá nenhuma saída porque non_existent_file.txt não está na listagem do diretório.
Verifique o status de saída:
echo $?
Você deve ver 1, indicando que grep não encontrou non_existent_file.txt.
Usar ls e grep é um padrão muito comum em scripts de shell para verificar a existência de arquivos e diretórios, especialmente quando você precisa processar a saída ainda mais.
Clique em Continuar para prosseguir.