scrip de perl

Páginas: (1/2) > >>

stres:

Estoy empezando con perl y me piden el siguiente ejercicio, tengo que escribir un scrip de perl pensado para administrador, que produzca el siguiente resultado:

usuario       (UID)              directorio home              espacio            seguridad
------------------------------------------------------------------------------------------------
alberto (464)                           /home/alberto             845495K 

el apartado seguridad estará en blanco, salvo si se da alguno de estos casos:

el user id es cero (mensaje: UID=0)
la información sobre password en /etc/passwd es "!" o "*" (mensaje:PASSWD)

A ver si me podeis orientar.

_XuRRo_:

Pues no parece complicado,mira:  yo llamaria a otros programas tipicos de linux, como 'whois' ,  'du'  y trabajaria con el fichero /etc/passwd. Con esas tres cosas ya puedes extraer toda la informacion q necesitas mostrar.

t doy mas pistas ;) utilizaria 'whoami' para saber q usuario soy, buscaria la linea correspondiente en el /etc/passw. De ahi saco el directorio home, el uid, y poco mas.... ves por donde va la cosa?? :)

salu2




stres:


De momento leo el /etc/passwd
#!/usr/bin/perl

$file = "etc/passwd"; #abro el fichero
open (INFO, $file); # lo abre
@lines = <INFO>; # lo lee en un vector
close (INFO); #cierra el fichero
print @lines; #imprime el vector

Esto es lo que llevo echo ahora el problema que me surge es como ponerlo con el formato que indique en el primer post creo que hay que utilizar el split y el espacio el du.

voy bien encaminado.

Un saludo de stres

byebye:

bueno pues para sacarlo en el formato ese, te pongo un ejemplo cutre pero puede que te de alguna idea:
Código:
--
foreach $a (@lines) {
 @datos=split(":",$a);
 print "$datos[0] $datos[2] $datos[5]\n";
}
--

eso te lo muestra en formato usuario/uid/home.

stres:

Un saludo Mr. Potato.
Me has dato muy buenas pistas.
Ahora lo que no logro conseguir es si en el camp User ide es 0 quiero que me salga el mensaje UID=0
Y en el campo passwd es "!" o "*" quiero que me salga mesaje=PASSWD.

A ver si me vuelver a orientar.

Un saludo.
Stres

Páginas: (1/2) > >>