J'ai rencontré le même problème aujourd'hui, j'ai trouvé la solution grâce à l'astuce donnée par @gordon-davisson. Ici, je crée un mot de passe avec un £ dedans, j'essaie de le récupérer, j'obtiens un hexagone, puis je décode avec xxd :
$ security add-generic-password -a Rumbles -s "Rumbles-Secret" -T /usr/bin/security -U
$ security add-generic-password -a Rumbles -s "Rumbles-Secret" -w "British£Password" -U
$ security find-generic-password -a Rumbles -s "Rumbles-Secret" -w
42726974697368c2a350617373776f7264
$ security find-generic-password -a Rumbles -s "Rumbles-Secret" -w | xxd -p -r
British£Password%
En utilisant xxd, vous pouvez décoder l'hexagone en une chaîne de caractères, mais pour la mettre en ordre, vous devez également supprimer le % de fin :
security find-generic-password -a Rumbles -s "Rumbles-Secret" -w | xxd -p -r | rev | cut -c 1- | rev
British£Password
Il y a peut-être d'autres moyens, mais je n'en ai pas trouvé sans définir une variable...