Почему бы просто
ls | grep -v [qQ]
Если вместо одиночных символов вы хотите исключить имена файлов, содержащие определенные строки символов, вы можете сделать это с помощью
ls | grep -v "str1\|str2\|..."
i.e. разделяя любую строку с escaped char char | (который действует как логический оператор «OR»). Не забудьте заключить его в двойные кавычки, чтобы предотвратить неправильное толкование специальных символов.
Другой ответчик дал команду запустить, но не сказал вам, как сделать ее по умолчанию.
Запустите эту команду:
echo "zstyle ':completion:*:*:-command-:*' group-order aliases functions commands" >> ~/.zshrc