Você deveria realmente usar find .
find <dir> -iname \*.zip
Exemplo: para procurar todos os arquivos .zip no diretório atual e todos os subdiretórios tente isto:
find . -iname \*.zip
Isso listará todos os arquivos que terminam com .zip sobre o caso. Se você quiser apenas aqueles com alteração de letra minúscula -iname to -name
O comando grep procura por picadas em arquivos, não por arquivos. Você pode usá-lo com find para listar todos os seus arquivos .zip como este
find . |grep -e "\.zip$"