Cette locution verbale en forme d'idiotisme animalier relève du registre familier.
Et elle signifie, au sens figuré : faire taire une personne, la mettre dans l'impossibilité de répondre, la réduire au silence".
On dit par exemple : "Je me suis fait injurié par un jeune crétin ce matin, mais je lui ai vite cloué le bec, je te le dis !".
Contrairement à ce que l'on pourrait croire, le verbe "Clouer" ici utilisé n'a aucun lien avec celui que nous connaissons, signifiant "Fixer, assembler avec des clous" ou "Fixer avec un objet pointu".
Il est issu de l'ancien mot "Cloer" qui signifiait "Clore". Il s'agit donc plutôt de "Fermer" le bec de quelqu'un, c'est à dire sa bouche et sa capacité de continuer à s'exprimer.
Source : www.linternaute.fr et wiktionary.org