hist_find_no_dups não garante que todas as linhas sejam exclusivas, você pode estar pesquisando através de um par de linhas repetidas.
Se você não quiser ter linhas duplicadas, procure em hist_ignore_all_dups . Isso impedirá que os comandos repetidos apareçam em seu arquivo de histórico, mas pode introduzir lacunas inesperadas - algo a ser percebido se você estiver reutilizando partes do seu histórico.
Outra opção é a hist_ignore_dups . Isso impede que duplicatas consecutivas sejam salvas.
Por último, mas não menos importante, há hist_save_no_dups (ignora duplicatas ao gravar o arquivo histórico) e hist_expire_dups_first , que começará a remover comandos repetidos quando o limite de $HISTSIZE for atingido.