O problema está aqui:
test 100.conf
está fazendo um teste de string, ou seja, se a string 100.conf
não estiver vazia. Como não está vazio, você sempre obterá Found
.
Isso é análogo a:
test -n 100.conf
[ 100.conf ]
[ -n 100.conf ]
Você precisa da verificação de existência de arquivo, ou seja, test -f
:
test -f 100.conf && echo "Found" || echo "Not found"