Traducir permisos rwx a formato octal en Linux


A veces puede resultarle útil mostrar los derechos de acceso de archivos o directorios en formato octal en lugar de rwx o quizás desee mostrar ambos.

En lugar de usar el viejo comando ls -l , en la mayoría de las distribuciones modernas de Linux (si no en todas) encontrará stat , una utilidad que muestra el estado del archivo o del sistema de archivos.

Cuando se ejecuta sin argumentos pero seguido de un nombre de archivo determinado, stat mostrará una gran cantidad de información sobre el archivo o directorio. Si se usa con la opción -c , stat le permite especificar un formato de salida. Es precisamente esta opción la que nos interesa especialmente.

Para mostrar todos los archivos en el directorio de trabajo actual seguido de los derechos de acceso en forma octal, escriba:

# stat -c '%n %a' *
add_emails.sh 755
anaconda-ks.cfg 600
delete_emails.sh 755
employee-dump.sql 644
index.html 644
latest.tar.gz 644
nrpe-2.15.tar.gz 644
php7 644
playbook.retry 644

En el comando anterior, la secuencia de formato:

  1. % n : significa nombre de archivo
  2. % a : significa derechos de acceso en forma octal

Alternativamente, puede agregar % a a % A , el argumento pasado a stat si también desea mostrar los permisos en formato rwx .

En ese caso, puede escribir:

# stat -c '%n %A' *
add_emails.sh -rwxr-xr-x
anaconda-ks.cfg -rw-------
delete_emails.sh -rwxr-xr-x
employee-dump.sql -rw-r--r--
index.html -rw-r--r--
latest.tar.gz -rw-r--r--
nrpe-2.15.tar.gz -rw-r--r--
php7 -rw-r--r--
playbook.retry -rw-r--r--

Para ver el tipo de archivo en la salida, puede agregar la secuencia de formato % F .

# stat -c '%c %F %a'

Hay varias otras secuencias de formato que puede especificar, consulte la página stat man para obtener más información.

# man stat

En este consejo, hemos cubierto una importante utilidad de Linux llamada stat, que le ayuda a mostrar un archivo o el estado del sistema de archivos. Nuestro enfoque principal aquí fue traducir los derechos de acceso de rwx de la salida tradicional de ls -l a la forma octal.

Como mencioné anteriormente, muchas distribuciones modernas de Linux ahora vienen con la utilidad estadística. Pero también debe recordar que su shell puede venir con su propia versión de stat, por lo tanto, consulte la documentación de su shell para obtener más información sobre las opciones y cómo usarlas.