J'ai téléchargé la dernière version (4.4 pour l'instant) des sources de Bash sur le site de GNU.
J'ai ouvert le fichier de traduction français (fr.po ) de po répertoire et j'ai cherché "autorisation refusée". Il n'y a eu aucun résultat.
Quand j'ouvre le terminal et lance cd /var/log/apache2 J'obtiens l'erreur :bash: cd: /var/log/apache2: Permission denied . Il s'agit donc d'une erreur Bash mais elle n'est pas incluse dans le fichier mentionné. Aussi, quand je grep -rn . -e "denied" dans le répertoire des sources bash, je n'obtiens que 2 résultats, tous deux issus du fichier "COPYING".
De plus, lorsque je change de langage Bash avec cette commande :export LC_ALL=fr_FR J'obtiens bash: cd: /var/log/apache2: Permission non accordée . Changer le langage Bash modifie cette erreur, c'est donc une autre preuve qu'il s'agit bien d'un message Bash.
Est-ce que quelqu'un sait pourquoi cette erreur n'est pas incluse dans le fichier po ?
Réponse acceptée :
La chaîne provient de strerror(3) , qui mappe les numéros d'erreur aux messages. Dans ce cas, il s'agit de mapper EACCES . Les chaînes (et leurs traductions) sont contenues dans votre bibliothèque C.