Programación General > C/C++

 Re: system("comando") a variable

(1/2) > >>

joaquinrg:
Hola, q tal? Mi pregunta es si se puede pasar el resultado de un comando a una variable. Por ejemplo meter en una variable system("dir");

Si hago :

int variable;
system("dir")>>variable;

en variable se almacena un numero. Q significa ese numero? Hay alguna forma de hacer esto? Gracias

Astor:
Mira el numero que almacenas de
int system(char *) no es mas que la salida del comando que ejecutaste (no la salida de pantalla, sino el valor de retorno).

Podrias ejecutarlo estilo
system("dir * > directorio.txt)
Despues usando las funciones para manejo de archivos, abrirlo y bueno, lo trabajas como quieras. No es de lo mas elegante, pero no se si tenes otra forma de hacerlo.

joaquinrg:
Hola, gracias por contestar, pero me parece que eso no me va a servir en este programa. Estoy intentando hacer un programa cliente/servidor. El cliente manda un comando al servidor, y este se ejecuta en el servidor. Hay alguna forma de q la salida del comando se pueda ver tambien en el cliente??habia pensado en redireccionar el comando a una varible (si es posible) y despues madar ese string al cliente con send y rcve de la misma forma q se enviaba el nombre del comando del cliente al servidor. Si redireccion el comando a un archivo luego tendria que mandar el archivo al ordenador donde esta el cliente,no? para poder leerlo, y eso ya va a ser mas complicao...Bueno, no se si me he explicado bien, pero gracias de todas formas

Astor:
Podes hacer lo que te dije. El servidor abre el archivo txt, lo lee, analiza y lo manda por un socket o por el medio de comunicacion que uses.
Nunca escuche esod e guardar una salida de pantalla en una variable.

Podrias tambien redireccionar el descriptor de stdout a un pipe, o un fifo.

joaquinrg:
Hola, se pueden enviar archivos por los ssockets? es que eso no sabia, pense que solo se podian enviar variables, por eso queria meter la salida del comando en una variable. Ahora buscare sobre como mandar el archivo por los sockets, gracias

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa