Linux/Unix Shell Scripting - Validar permisos de directorios

 
Vista:

Validar permisos de directorios

Publicado por Juan (4 intervenciones) el 05/08/2015 23:34:59
Hola amigos, escribo a ver si pueden apoyarme con un script, realmente soy nuevo en el tema de shell script y con ayuda de foros y demás he ido armando un script que lo que quiero que haga es que me liste si el permiso de la carpeta home de cada usuario tiene los permisos 750.
Estoy utilizando linux CentOS 7, en bash.


awk -F ":" '{a[$1]=$6} END {for ( i in a ) {var="`stat -c "%a" a[i]`"} {if ( "$var" != "750" ) {print i,a[i]}}}' /etc/passwd

El error que me arroja es awk: (FILENAME=/etc/passwd FNR=25) fatal: attempt to use array `a' in a scalar context.

Agradezco el apoyo que puedan brindarme al respecto, en qué puede estar mal y como corregirlo, de paso, si creen que se pueda optimizar el mismo, serán bienvenidos sus comentarios, con tal de mejorar.

Saludos y gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Validar permisos de directorios

Publicado por Tom (361 intervenciones) el 06/08/2015 08:46:51
No sé si eso funciona o no, pero lo que te genera el error es el "%a" del comando stat, que te lo está interpretando el awk.
Ponlo entre comillas simples:

1
var="`stat -c '%a' a[i]`"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Validar permisos de directorios

Publicado por Juan (4 intervenciones) el 06/08/2015 15:30:49
Muchisimas gracias, me funcionó.

Saludos ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar