Mar Abr 18, 2006 12:36 pm
|
 |
pmorales
Perlero Nuevo

|
Registrado: 18 Abr 2006
Mensajes: 2
|
|
| ¿Cómo "conversar" con programas UNIX? |
|
|
Hola a todos, soy nuevo en esta comunidad y espero poder aprender harto
Ahora va mi duda, me gustaría saber si se puede "conversar" con programas unix, me explico: por ejemplo quiero pasarle algunos parámetros a la función ls, después ejecutarla y tomar acciones dependiendo de la respuesta. ¿Se puede hacer? si es así, ¿Se puede guardar el retorne de ls en alguna variable?
gracias de antemano por las respuestas
Saludos! |
|
|
|
Mar Abr 18, 2006 1:00 pm
|
 |
Perl user
Maestro Honorario

|
Registrado: 03 Nov 2004
Mensajes: 385
|
|
|
|
|
Que tal, tienes varias soluciones:
1) Hay modulos en CPAN para conversar con aplicaciones, dependiendo el tipo de la aplicación puedes encontrar un módulo específico.
2) Si son comunicaciones sencillas puedes hacerlo atravez de open() y pipes.
3) Puedes usar backticks ( `` ) o el operador qx() para ejecutar un comando y obtener su salida.
Saludos, |
|
Mar Abr 18, 2006 1:01 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4090
Ubicación: Valladolid, España
|
|
|
|
|
La solución más sencilla pasa por componer el comando unix con los argumentos y luego ejecutar con los backtiks o qx (busca por qx/STRING/):
| Código: |
$argumentos = '-alrt';
$resultado = qx( ls $argumentos ); |
Si necesitas un nivel más alto de comunicación, visita open.
Aquí hay una mejor introducción: http://perldoc.perl.org/perlipc.html#Using-open()-for-IPC |
|
Mie Abr 19, 2006 11:28 am
|
 |
pmorales
Perlero Nuevo

|
Registrado: 18 Abr 2006
Mensajes: 2
|
|
|
|
|
Muchas gracias! era justamente lo que necesitaba  |
|
Powered by phpBB © 2001, 2005 phpBB Group
|