Comment obtenir les autorisations de fichiers Octal à partir de la ligne de commande sous Mac OS
Les utilisateurs en ligne de commande sont probablement habitués à utiliser le chmod pour définir les autorisations de fichiers en format numérique ou octal, par exemple en exécutant une commande comme "chmod 755 nom de fichier", mais vous êtes-vous déjà demandé comment obtenir les autorisations de fichiers en format octal ?
Si vous souhaitez voir ou afficher la valeur numérique octale des autorisations de tout fichier ou dossier via la ligne de commande, vous pouvez vous tourner vers la commande stat de Mac OS pour le faire.
Nous supposons que vous avez un niveau raisonnable d'expérience et d'aisance en ligne de commande, si ce n'est pas le cas, alors cet article ne vous concerne probablement pas. La plupart des utilisateurs de Mac ne pourront consulter ou modifier les autorisations de fichiers que par le biais du Mac Finder, comme décrit ailleurs (si tant est qu'ils le fassent), alors que cet article s'adresse à des utilisateurs plus avancés.
Comment obtenir des valeurs numériques de permission chmod sur le Mac
Pour commencer, lancez l'application Terminal depuis /Applications/ sur le Mac et utilisez les commandes suivantes :
stat -f %A file.txt
Par exemple, cette commande peut produire quelque chose comme ce qui suit :
$ stat -f %A wget-1.18.tar.gz
644
Où, dans cet exemple, "644" est la valeur octale des permissions de ce fichier.
Vous pouvez aussi utiliser -f et %OLp (oui, c'est un "o" majuscule et non un zéro), la sortie sera la même en supposant que le fichier l'est aussi :
stat -f %OLp /Applications/System\ Preferences.app
Un exemple de sortie pour cette commande peut ressembler à ce qui suit, montrant les autorisations de valeur numérique octale pour l'élément cible :
$ stat -f "%OLp" '/Applications/Préférences système.app'
775
Dans cet exemple, l'application "Préférences Système" a une valeur d'autorisation octale de 775.
Vous ne devriez pas avoir besoin d'utiliser des citations, bien que si vous avez besoin pour une raison quelconque d'échapper à un nom ou à un chemin de fichier, ou pour des raisons de script, il est facile de les placer comme cela :
stat -f "%OLp" '/Applications/Préférences système.app'
Le drapeau -f correspond au format, vous pouvez en savoir plus sur les options de formatage spécifiques pour la sortie des statistiques à partir de la page de manuel sur les statistiques avec "man stat".
Dans ce dernier cas de commande, le "O" (o majuscule) sert spécifiquement à obtenir une sortie octale.
Connaître les autorisations numériques exactes d'un fichier ou d'un dossier est extrêmement utile pour de nombreuses raisons, et il peut être utile de le savoir si vous ajustez les autorisations de divers éléments, ou même si vous déplacez des fichiers sur le Mac et que vous souhaitez conserver les autorisations exactes et les vérifier après coup. Il existe d'innombrables autres utilisations, en particulier si vous utilisez un serveur de toute sorte sur le Mac.
Ces commandes devraient fonctionner de la même manière pour récupérer les permissions octales dans presque toutes les versions de MacOS, MacOS ou Mac OS X, quelle que soit la façon dont la convention de nommage est mise en majuscule. Il est à noter cependant que l'approche pour obtenir des permissions octales sur le Mac est différente du reste du monde Linux, donc si vous venez sur le Mac depuis le monde Linux, vous devrez ajuster les drapeaux de la commande stat pour obtenir précisément les permissions en format octal, nous allons couvrir cela rapidement ensuite.
Obtenir les autorisations de fichiers Octal en ligne de commande sous Linux
Pour être complet, nous allons brièvement discuter de l'obtention des valeurs de permissions octales dans le monde Linux également, où vous pouvez utiliser ce qui suit pour obtenir les permissions de fichiers octales :
stat -c "%a %n" /Chemin/À/Fichier
Vous pouvez également utiliser plus simplement la commande stat -c :
stat -c %a /Path/To/File.txt
La sortie de la valeur numérique sera la même quoi qu'il arrive, tant que le fichier cible entré est le même, bien sûr.
Encore une fois, ces deux dernières approches sont spécifiques à linux, et vous devrez utiliser les méthodes décrites plus haut pour obtenir les valeurs octales des permissions d'un fichier sous Mac OS.
Connaissez-vous d'autres méthodes ou approches pour récupérer la valeur numérique des autorisations de fichiers sur un Mac ? Partagez-les dans les commentaires ci-dessous !