• Publicidad

No entiendo por qué me sale el siguiente error

Así que programas sin strict y las expresiones regulares son otro modo de hablar. Aquí encontrarás respuestas de nivel avanzado, no recomendable para los débiles de corazón.

No entiendo por qué me sale el siguiente error

Notapor javierg » 2006-12-29 05:50 @285

Señores, tengo el siguiente problema, cuando ejecuto el script, me salen los errores de más abajo

CÓDIGO
Código: Seleccionar todo
#Despues de cargado los nodos, damos de alta los nodos
' cd /opt/OV/bin';   ----> linea 23
'./loadhosts /etc/nodos.txt';  ----> linea 24

ERRORES
Código: Seleccionar todo
# ./hpov.pl
Useless use of a constant in void context at ./hpov.pl line 23.
Useless use of a constant in void context at ./hpov.pl line 24.


ayuda por favor, ¿qué puede ser?
javierg
Perlero nuevo
Perlero nuevo
 
Mensajes: 48
Registrado: 2006-10-17 05:26 @268

Publicidad

Notapor creating021 » 2006-12-29 09:57 @456

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
 chdir "/opt/OV/bin" or die "/opt/OV/bin $!\n"; #----> linea 23
system("exec loadhosts /etc/nodos.txt"); #----> linea 24
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4

:wink:
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor

Notapor eliben » 2007-05-13 11:00 @500

El problema actual aquí es que tratáis de usar las citas '' en lugar de citas `` (backticks). Para Perl, la cadena en las citas '' esa ... una cadena - el constante. Por lo tanto, tienes el error "Useless use of a constant".

Si usas las citas ``, va a obrar:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
`cd /opt/OV/bin`;
`./loadhosts /etc/nodos.txt`;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
eliben
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2007-05-13 10:26 @476
Ubicación: Israel

Notapor creating021 » 2007-05-13 19:07 @838

Aun así usar "backticks" no es una solución en este caso:

http://perldoc.perl.org/perlfaq8.html#W ... th-system()%3f
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor

Notapor explorer » 2007-05-13 20:41 @903

¿Por qué no es una solución en este caso?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor creating021 » 2007-05-14 15:38 @693

Porque el uso de estos es para capturar datos a un string o array al igual que open. Para ejecutar está system() o exec()... ¿No es así?
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor

Notapor explorer » 2007-05-14 16:56 @747

Es que, precisamente, no sabemos si javierg quiere capturar o no la salida de esos comandos o si sólo quiere ejecutarles, como si fuera el script Perl fuera un script shell cualquiera.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor creating021 » 2007-05-14 17:23 @766

Buen punto, pero recuerda que "cd" no es un comando, es una función de Shell y por eso creí que no quería capturar datos. :lol:
Expect the worst, is it the least you can do?
Avatar de Usuario
creating021
Perlero frecuente
Perlero frecuente
 
Mensajes: 595
Registrado: 2006-02-23 16:17 @720
Ubicación: Frente al monitor


Volver a Avanzado

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron