El tema es el siguiente, estoy acabando un curso de introducción al Linux, y uno de los ejercicios finales, es un programa en Perl. Bien, pues el caso es que lo tengo "terminado", a mi manera, pero está hecho, vamos, que no es ninguna maravilla y hay algunas cosas que seguramente se podrían hacer de manera más sencilla, pero estoy iniciandome en esto, y no he podido hacer nada mejor. XD
Bueno, el tema es que yo creo que está todo bien, sin embargo al ejecutarlo en modo debug, me salen unos "errores" o avisos, y el programa no hace nada.
son estos:
- Código: Seleccionar todo
C:\Documents and Settings\Ignasificus\Practicas_PERL>perl -w info_passwd.pl
Useless use of push with no values at info_passwd.pl line 22.
Name "main::dirname" used only once: possible typo at info_passwd.pl line 48.
Use of uninitialized value in open at info_passwd.pl line 42.
Argument "!" isn't numeric in numeric eq (==) at info_passwd.pl line 66.
Argument "*" isn't numeric in numeric eq (==) at info_passwd.pl line 66.
Bueno, aquí está desde Windows, pero en Linux me tira más o menos los mismos errores, el caso es que funcione en Linux (ya que se trata de sacar información del archivo \etc\passwd).
Donde pone "useless use of push with no values", en la linea 22 del código fuente, hay lo siguiente: $longitud = push(@entradas); que está puesto para que devuelva en la variable $longitud, el número de líneas del fichero passwd, que está abierto en @entradas.
No veo prudente poner el código aquí, ya que el curso está en marcha, y este es uno de los últimos ejercicios. Pero, también sé que es casi imposible determinar el error sin tener el código presente, de manera que quien pueda ayudarme a solucionar el problema, le puedo mandar el código por e-mail o algo, y lo hablamos.
¡Desde ya, muchas gracias!