[0-99] é o mesmo que [0-9] , [0-100] significa [01] . [...] define uma classe de caracteres, você não pode usar strings mais longas lá.
Para resolver sua pergunta original, você pode usar um loop:
for i in {0..99} ; do
grep "some string" file-"$i" > processed-"$i"
done
Ou, se nem todos os arquivos de entrada possíveis existirem, você poderá extrair o sufixo do nome do arquivo:
for file in file-* ; do
suffix=${file##*-}
grep "some string" "$file" > processed-"$suffix"
done