Hay ocaciones en que ejecutar un comando nativo del sistema, o mejor dicho un comando reconocido por nuestra shell, nos facilita mucho la vida….
Bueno, no para todos es tan obvio como hacer esto, asi que aca voy a dejar registrado como realizar esta sencilla operacion
El formato es simple ![]()
system("comando que quieras");
Aqui dejo un sencillisimo ejemplo, primero creamos un archivo llamado myls.c y dentro de él ponemos el siguiente codigo:
#include<stdio.h>
int main(){
system("ls -l");
return 0;
}
Al copiar y pegar el codigo va a tener un problemas con las comillas, asi que las tienen que poner denuevo
Para compilar hacemos lo siguiente:
gcc myls.c -o myls
y finalmente para ejecutarlo, hacemos lo siguiente :
./myls
Al ejecutar este programa , será lo mismo que ejecutar en la consola el comando “ls -l” ( sin comillas).
Saludos








Se puede ejecutar un comamdno shell desde C y esperar por una respuesta antes de seguir procesando???
Gracias!
sencillo y util saber como van las llamadas al systema
bueno gracias por tu post es muy bueno pero tengo una duda si quisiera abrir un carpeta como le hago..?
Hola Joel-jonas!
Bueno en el caso que quieras abrir una carpeta para navegarla puedes poner la instruccion “nautilus ~”, por ejemplo, esto abriria tu home en una ventana de nautilus.
No se si esa era tu pregunta.
Saludos
Si quiero capturar los resultados?
Gracias.
men demasiadas gracias, usted no sabe la salvada que me acaba de pegar
Como hago para capturar la salida del system(“ls -l”) por ejemplo, y mostrarlo en un textEdit???
system(“ls -l > Archivo”)
si el archivo no existe lo crea y si existe lo sobreescribe.
si en vez de poner “>” pones “>>” agrega el contenido al final del archivo.
Tambien seria sano agregar la librería stdlib.h al principio del codigo para que al compilar con la opcion “-Wall” no arroje warning.
#include
Saludoss
hola amig me podrias ayudar, lo que necesito hacer es abrir un directorio pero desde el mismo programa (sin abrir el directorio) mas bien es acceder al directorio, por eso nautilus no me sirve xq eso abre el directorio pero yo ocupo algo para acceder una ilustracion seria algo asi
system(“cd directorio”); algo asi me entiendes??
muchas gracias funciono perfecto