I downloaded the latest version (4.4 for now) of Bash sources from GNU's site.I opened French translation file (fr.po) from po directory and I searched for permission denied. There were no results.When I open terminal and run cd /var/log/apache2 I get the error: bash: cd: /var/log/apache2: Permission denied. So it IS a Bash error yet it's not included in mentioned file. Also, when I grep -rn . -e denied in the bash sources directory I only get 2 results, both of which are from file COPYING.Moreover, when I change Bash language with this command: export LC_ALL=fr_FR I get bash: cd: /var/log/apache2: Permission non accorde. Changing Bash language changes this error so it's another proof that this is indeed a Bash message.Does anyone know why isn't this error included in the po file?
Why does the bash translation file not contain all error texts?
bash;locale
The string comes from strerror(3), which maps error numbers to messages. In this case, it's mapping EACCES. The strings (and their translations) are contained in your C library.