Ho scaricato l'ultima versione (4.4 per ora) dei sorgenti Bash dal sito di GNU.
Ho aperto il file di traduzione francese (fr.po ) da po directory e ho cercato "permesso negato". Non ci sono stati risultati.
Quando apro il terminale ed eseguo cd /var/log/apache2 Ottengo l'errore:bash: cd: /var/log/apache2: Permission denied . Quindi è un errore Bash ma non è incluso nel file menzionato. Inoltre, quando grep -rn . -e "denied" nella directory dei sorgenti di bash ottengo solo 2 risultati, entrambi provenienti dal file "COPYING".
Inoltre, quando cambio la lingua di Bash con questo comando:export LC_ALL=fr_FR Ottengo bash: cd: /var/log/apache2: Permission non accordée . La modifica della lingua di Bash cambia questo errore, quindi è un'altra prova che questo è davvero un messaggio Bash.
Qualcuno sa perché questo errore non è incluso nel file po?
Risposta accettata:
La stringa proviene da strerror(3) , che associa i numeri di errore ai messaggi. In questo caso, sta mappando EACCES . Le stringhe (e le relative traduzioni) sono contenute nella tua libreria C.