Example #1
0
File: opp_t.c Project: Benkho/PT4
int main(int argc, char *argv[])
{
    int optch;
    extern int opterr;

    char format[] = "hvctruxfzdsm";

    opterr = 1;

    while ((optch = getopt(argc, argv, format)) != -1)
        switch (optch) {
        case 'h':
            printf ("Aide :\n");
            printf ("Utilisation : tar [OPTION...] [FICHIER]...\n");
            break;
        case 'v':
            printf ("ParamÚtre v recontré : mode verbose\n");
            break;
        case 'c':
            printf ("ParamÚtre c recontré : créer une archive à partir d'une liste de fichiers (et de répertoires)\n");

            // VOIR OPP2

            break;
        case 't':
            lister(argv[2]);
            break;

        case 'r':
            printf ("ParamÚtre r recontré : ajouter de nouveaux fichiers (ou repertoires) à une archive existante\n");
            break;
        case 'u':
            printf ("ParamÚtre u recontré : pour mettre à jour l'archive si les fichiers listés sont plus récents que ceux archivés\n");
            break;
        case 'x':
            break;
        case 'f':
            printf("Nom du fichier: %s\n", argv[2]);
            break;
        case 'z':
            compresser(argv[2]);
            break;
        case 'd':
            printf ("ParamÚtre d recontré : pour supprimer un fichier d'une archive\n");
            break;
        case 's':
            printf ("ParamÚtre s recontré\nAvec 'parse' : pour économiser de la place pour stocker les fichier contenant beaucoup de zéros consécutifs (sparse file)");
            break;
        case 'm':
            printf ("ParamÚtre m recontré : pour afficher les différences entre les fichiers archivés et les fichiers existants en utilisant la commande Unix 'diff'\n");
            break;
        }
    return 0;
}
Example #2
0
File: all.c Project: Benkho/PT4
int main(int argc, char *argv[])
{  
  int optch;  
  extern int opterr;  
  char format[] = "hvctruxfzdsm";  
  bool verbose = false;
  
  opterr = 1;  
  
  //boucle qui traite les options
  while ((optch = getopt(argc, argv, format)) != -1)  
    switch (optch)
    {  
      case 'h':  
        printf ("Aide :\n");
        printf ("Lister  : taar -t fichierTAR\n");
        printf ("Extraire  : taar -x fichierTAR cheminDeSortie\n");
        printf ("Compresser  : taar -z fichierTAR\n");
        break;

      case 'v':  
        printf ("Paramètre v recontré : mode verbose\n");
        verbose = true;
        break;

      case 'c':  
        printf ("Paramètre c recontré : creer une archive à partir d'une liste de fichiers (et de repertoires)\n");
        printf ("Non implémenté\n");
        break;  
      case 't':  
        printf ("Paramètre t recontré : lister les fichiers (et repertoires) contenus dans une archive\n");
        lister(argv[2]);
        break;

      case 'r':  
        printf ("Paramètre r recontré : ajouter de nouveaux fichiers (ou repertoires) à une archive existante\n");
        printf ("Non implémenté\n");
        break;  
      case 'u':  
        printf ("Paramètre u recontré : pour mettre à jour l'archive si les fichiers listes sont plus recents que ceux archives\n");
        printf ("Non implémenté\n");
        break;  
      case 'x':  
        printf ("Paramètre x recontré : pour extraire les fichiers de l'archive\n");
        extraire(argv[2], argv[3]);
        break;

      case 'f':
        printf ("Paramètre f recontré : pour indiquer le nom du fichier archive, sinon tar utilise l'entree et la sortie standard avec les options precedentes\n");
        break;
      case 'z':  
        printf ("Paramètre z recontré : pour compresser le fichier d'archive (en utilisant gzip)\n");
        compresser(argv[2]);
        break;

      case 'd':  
        printf ("Paramètre d recontré : pour supprimer un fichier d'une archive\n");
        printf ("Non implémenté\n");
        break;  
      case 's':  
        printf ("Paramètre s recontré\nAvec 'parse' : pour economiser de la place pour stocker les fichier contenant beaucoup de zeros consecutifs (sparse file)");
        printf ("Non implémenté\n");
        break;  
      case 'm':
        printf ("Paramètre m recontré : pour afficher les differences entre les fichiers archives et les fichiers existants en utilisant la commande Unix 'diff'\n");
        printf ("Non implémenté\n");
        break; 
    }  
}
Example #3
0
int main (int argc, char * argv[]) {
    t_ptr_arbre dictionnaire = NULL;
    unsigned int choix = 1;
    char fichier_entree[256], fichier_sortie[256];
    double temps_debut = 0.0, temps_fin = 0.0;
    
    printf ("\n\n");
    printf (" ---------- Compression et Decompression LZW ---------------\n\n");
    
    if (argc == 2 && strcmp ("h", argv[1]) == 0) {
        printf ("\n\n");
        printf (" lzw <c|d|h> <fichier_d_entree> <fichier_de_sortie>\n");
        printf (" \tc : compression\n");
        printf (" \td : decompression\n");
        printf (" \th : affichage de l'aide\n");
        printf (" \tfichier_d_entree : nom du fichier d'entree\n");
        printf (" \tfichier_de_sortie : nom du fichier de sortie\n");
        printf ("\n\n");
        return EXIT_SUCCESS;
    }
    else if (argc == 4) {
        if (strcmp ("c", argv[1]) == 0) {
            printf ("COMPRESSION\n");
            temps_debut = (double)clock ();
            
            dictionnaire = initialiser_dictionnaire ();
            ouvrir_fichier_entree (argv[2], 0);
            ouvrir_fichier_sortie (argv[3], 1);
            compresser (dictionnaire);
            
            temps_fin = (double)clock ();
            afficher_statistiques (1, temps_debut, temps_fin);
            fermer_fichiers ();
            detruire_dictionnaire (dictionnaire);
        }
        else if (strcmp ("d", argv[1]) == 0) {
            printf ("DECOMPRESSION\n");
            temps_debut = (double)clock ();
            dictionnaire = initialiser_dictionnaire ();
            ouvrir_fichier_entree (argv[2], 1);
            ouvrir_fichier_sortie (argv[3], 0);
            decompresser (dictionnaire);
            temps_fin = (double)clock ();
            afficher_statistiques (0, temps_debut, temps_fin);
            fermer_fichiers ();
            detruire_dictionnaire (dictionnaire);
        }
        
        printf ("\n\n");
        return EXIT_SUCCESS;
    }
    
    /* Menu si aucun argument n'a ete donne en ligne de commande */
    while (choix != 0) {
        printf ("\n\n");
        printf (" \t1 - Compresser un fichier (fichier texte)\n");
        printf (" \t2 - Decompresser un fichier (fichier binaire)\n");
        printf (" \t3 - Affichage du dernier dictionnaire utilise\n");
        printf (" \t0 - Quitter le programme\n");
        printf (" Votre choix : ");
        scanf ("%d", &choix);
        fgets (fichier_entree, 256, stdin); /* Recupere le caractere \n lu apres le choix */
        printf ("\n");
        
        switch (choix) {
            case 1 :
                printf ("COMPRESSION\n");
                if (dictionnaire != NULL)
                    detruire_dictionnaire (dictionnaire);
                
                temps_debut = (double)clock ();
                
                dictionnaire = initialiser_dictionnaire ();
                demander_nom_fichiers (fichier_entree, fichier_sortie);
                ouvrir_fichier_entree (fichier_entree, 0);
                ouvrir_fichier_sortie (fichier_sortie, 1);
                compresser (dictionnaire);
                
                temps_fin = (double)clock ();
                afficher_statistiques (1, temps_debut, temps_fin);
                fermer_fichiers ();
                break;
            case 2 :
                printf ("DECOMPRESSION\n");
                if (dictionnaire != NULL)
                    detruire_dictionnaire (dictionnaire);
                
                temps_debut = (double)clock ();
                
                dictionnaire = initialiser_dictionnaire ();
                demander_nom_fichiers (fichier_entree, fichier_sortie);
                ouvrir_fichier_entree (fichier_entree, 1);
                ouvrir_fichier_sortie (fichier_sortie, 0);
                decompresser (dictionnaire);
                
                temps_fin = (double)clock ();
                afficher_statistiques (0, temps_debut, temps_fin);
                fermer_fichiers ();
                break;
            case 3 :
                printf ("AFFICHAGE DU DICTIONNAIRE\n");
                if (dictionnaire != NULL)
                    afficher_dictionnaire (dictionnaire, 0);
                break;
            default : choix = 0; break;
        }
    }
    
    printf ("\n");
    
    return EXIT_SUCCESS;
}