Sur Windows, l'analyse des chaînes de caractères en ligne de commande est un jeu de hasard, que ce soit pour Batch ou PowerShell. Des outils en ligne de commande essentiels comme fsutil
et dcdiag
renvoient leur sortie sous forme de chaînes de caractères internationalisées dans la langue de l'installation du système d'exploitation, rendant pratiquement impossible l'écriture de scripts de manière universelle sans prendre en compte le support de chaque choix de mots et de formatage dans chaque langue.
Chaque fois que possible, j'écris en PowerShell (pour retourner des objets au lieu de chaînes de caractères) et j'utilise la WMI pour renvoyer des énumérateurs non localisés que je traduis moi-même via des tables de correspondance. Il y aura toujours cependant des outils qui servent de seul moyen sur un appareil pour recueillir les informations requises.
Je suis actuellement en train d'écrire un script pour macOS en invoquant (dans ce cas) l'outil csrutil
.
Comme de nombreux utilitaires *nix, sa sortie est au format de chaîne de caractères. En l'exécutant, on obtient la sortie suivante:
État de la Protection de l'intégrité du système : inconnu (configuration personnalisée).
Configuration :
Interne à Apple : désactivé
Signature des kexts : désactivée
Protections du système de fichiers : désactivées
Restrictions de débogage : désactivées
Restrictions DTrace : désactivées
Protections NVRAM : désactivées
Vérification de la Base système : activée
Il s'agit d'une configuration non prise en charge, susceptible de se casser dans le futur et de laisser votre machine dans un état inconnu.
À ma grande surprise, Internet ne contient aucune information sur ce sujet que j'ai pu trouver, donc :
Dans quelle mesure Apple internationalise-t-il les sorties du terminal?
Il s'agit moins d'une question sur Bash ou ZSH car je sais qu'ils sont toujours en anglais, mais macOS est notoire pour créer des forks spécifiques à Apple incompatibles avec les outils POSIX; de plus, comme démontré ci-dessus, il existe de nombreux outils en ligne de commande développés par Apple destinés à la gestion des systèmes macOS. Dois-je supposer que ceux-ci ont été traduits au moins en allemand et acheter un appareil macOS avec la langue allemande installée? Ou est-ce que tout est toujours en anglais?
En général, je demande à quel point je devrais m'attendre à l'internationalisation des outils en ligne de commande forgés par Apple.