Se você tiver que testar um monte de arquivos, uma função é uma solução melhor. Caso contrário, um simples ls
do arquivo será suficiente! Abaixo está a saída que você obterá quando o arquivo que você está procurando não estiver lá:
../theDirIWantToCheck $ ls theFileIWantToFind.txt
ls: theFileIWantToFind.txt: No such file or directory
Também recomendo utilizar a conclusão de tabulação. Dê o comando ls
e comece a digitar o nome de qualquer arquivo que você espera. Você só tem que dar alguns caracteres e, em seguida, pressione tab (se isso não funcionar, pressione a tecla duas vezes). Todos os nomes de arquivo correspondentes a esse padrão serão apresentados se existirem.
$ ls fi<tab>
file1.txt file2.txt file3.txt file_new.txt filetypes.txt
Você também pode transmitir ls
vários argumentos para verificar vários arquivos:
$ ls file1.txt file2.txt file3.txt
...
Se os arquivos compartilharem o mesmo prefixo de padrão (como acima: arquivo1, arquivo2, arquivo3), você poderá usar a expansão de chave. Isso é como passar todos os três argumentos em uma forma condensada. O ..
representa um intervalo.
$ ls file{1..3}.txt
ls: file1.txt: No such file or directory
ls: file2.txt: No such file or directory
ls: file3.txt: No such file or directory
Como alternativa, você pode usar um curinga para passar todos os padrões de correspondência possíveis com o prefixo comum "file" (como file1.txt, file_other.txt):
$ ls file*
...
Finalmente, você pode passar todos os argumentos em uma matriz para ls
e deixar que ela faça a impressão para você, em vez de usar echo
. Além disso, se você usar a opção -l
para ls
, quando os arquivos existirem, você poderá obter alguns detalhes adicionais sobre eles, como permissões, tamanho do arquivo e data / hora da última modificação.