• Viernes 8 de Noviembre de 2024, 15:48

Autor Tema:  Hacer Listados De Direcciones Y Mostrarlos  (Leído 989 veces)

Vallu

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Hacer Listados De Direcciones Y Mostrarlos
« en: Domingo 14 de Octubre de 2007, 15:32 »
0
Primero de todo quisiera pedir perdon por si esta question ya ha sido resuelta anteriormente, si ese fuera el caso les agradeceria que me dispusieran un LINK hacia la pagina en si. Gracias

La pregunta en si no se como plantearla, la explicare tan bien como me sea posible.
Bien, en classe nos han pedido hacer un ejercicio que consta de dos partes:

1º) se introduce por teclado la palabra "-normal" ó "-total" y acto seguido el programa hace un system("ls"); si la palabra ha sido -normal o un system("ls -all"); si la palabra ha sido total.
La question es que el ls -all creo k lo he de concatenar, supongo que con la funcion Concat();, pero no soy capaz de hacerlo, alguien me podria echar una mano? Gracias por adelantado.

2º)Es el mismo programa, lo que ha de hacer en esta parte es darle una direccion y que el programa me haga un system("ls"); de esa direccion. En este punto, siento decirlo, pero no se ni por donde comenzar.


Aqui les dejo el intento del programa creado con el Dev-C++:

Código: Text
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int main(int argc, char** argv){
  6.    
  7.   if(!strcmp(argv[1],"-normal")){
  8.      system("ls");
  9.   }
  10.   if(!strcmp(argv[1],"-total"));
  11.      system("ls -all");
  12.      
  13.   else{
  14.     printf("Introdueix -normal o -total:");
  15.   }
  16.    
  17.  
  18.   return 0;
  19. }
  20.  
  21.  


PD: Esta echo en catalan, pero no veo problema alguno para que nadie no lo pudiera entender, pero si ese fuera el caso, diganlo y lo traducire

su -

  • Moderador
  • ******
  • Mensajes: 2349
    • Ver Perfil
Re: Hacer Listados De Direcciones Y Mostrarlos
« Respuesta #1 en: Lunes 15 de Octubre de 2007, 02:21 »
0
No lo he entendido, que queres hacer?

Aunque no sea buno para esto, hare el intento:
Si tratas de tomar los valores resultantes de ls... nunca lo lograras con system().
Para eso tendras que usar popen (si estas en GNU/Linux) o jugar con pipes.


Código: Text
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int main(int argc, char** argv){
  6.  
  7.     if( !strcmp( argv[1], "-normal") )
  8.         system( "ls -all" );
  9.  
  10.     else if ( !strcmp( argv[1], "-total" ) )
  11.         system( "ls" );
  12.  
  13.     else
  14.        printf("Introdueix -normal o -total:");
  15.        //Aqui, codigo con scanf
  16.     return 0;
  17. }
  18.  

Busca sobre la funcion scanf...  ;)
*******PELIGRO LEE ESTO!!*******

There is no place like 127.0.0.1

Conecto luego existo, no conecto luego insisto.