Changeset d19ff50


Ignore:
Timestamp:
06/30/14 13:21:51 (6 years ago)
Author:
Shane Alcock <salcock@…>
Branches:
4.0.1-hotfixes, cachetimestamps, develop, dpdk-ndag, etsilive, libtrace4, master, ndag_format, pfring, rc-4.0.1, rc-4.0.2, rc-4.0.3, rc-4.0.4, ringdecrementfix, ringperformance, ringtimestampfixes
Children:
2697eab, 9ad7a35
Parents:
4b0cd2f
Message:

Added help text to wandiocat.

Also changed indentation to match the rest of libwandio, as it
was annoying to work with otherwise :)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libwandio/wcat.c

    r0e46fbc rd19ff50  
    66#include <string.h>
    77
     8static void printhelp() {
     9        printf("wandiocat: concatenate files into a single compressed file\n");
     10        printf("\n");
     11        printf("Available options:\n\n");
     12        printf(" -z <level>\n");
     13        printf("    Sets a compression level for the output file, must be \n");
     14        printf("    between 0 (uncompressed) and 9 (max compression)\n");
     15        printf("    Default is 0.\n");
     16        printf(" -Z <method>\n");
     17        printf("    Set the compression method. Must be one of 'gzip', \n");
     18        printf("    'bzip2', 'lzo' or 'lzma'. If not specified, no\n");
     19        printf("    compression is performed.\n");
     20        printf(" -o <file>\n");
     21        printf("    The name of the output file. If not specified, output\n");
     22        printf("    is written to standard output.\n");
     23}
     24
     25
    826int main(int argc, char *argv[])
    927{
    10     int compress_level = 0;
    11     int compress_type = WANDIO_COMPRESS_NONE;
    12     char *output = "-";
    13     char c;
    14     while ((c = getopt (argc, argv, "Z:z:o:")) != -1) {
    15         switch (c)
    16         {
    17             case 'Z':
    18                 compress_type = wandio_lookup_compression_type(optarg)
    19                         ->compress_type;
    20                 break;
    21             case 'z':
    22                 compress_level = atoi(optarg);
    23                 break;
    24             case 'o':
    25                 output = optarg;
    26                  break;
    27            case '?':
    28              if (optopt == 'Z' || optopt == 'z' || optopt == 'o')
    29                fprintf (stderr, "Option -%c requires an argument.\n", optopt);
    30              else if (isprint (optopt))
    31                fprintf (stderr, "Unknown option `-%c'.\n", optopt);
    32              else
    33                fprintf (stderr,
    34                         "Unknown option character `\\x%x'.\n",
    35                         optopt);
    36              return 1;
    37            default:
    38              abort ();
    39            }
    40     }
    41 
    42     iow_t *iow = wandio_wcreate(output, compress_type, compress_level, 0);
    43                 /* stdout */
    44     int i;
    45     for(i=optind; i<argc; ++i) {
    46         char buffer[1024*1024];
    47         io_t *ior = wandio_create(argv[i]);
    48         if (!ior) {
    49             fprintf(stderr, "Failed to open %s\n", argv[i]);
    50             continue;
     28        int compress_level = 0;
     29        int compress_type = WANDIO_COMPRESS_NONE;
     30        char *output = "-";
     31        char c;
     32        while ((c = getopt (argc, argv, "Z:z:o:h")) != -1) {
     33                switch (c)
     34                {
     35                case 'Z':
     36                        compress_type = wandio_lookup_compression_type(optarg)
     37                                        ->compress_type;
     38                        break;
     39                case 'z':
     40                        compress_level = atoi(optarg);
     41                        break;
     42                case 'o':
     43                        output = optarg;
     44                        break;
     45                case 'h':
     46                        printhelp();
     47                        return 0;
     48                case '?':
     49                        if (optopt == 'Z' || optopt == 'z' || optopt == 'o')
     50                                fprintf (stderr, "Option -%c requires an argument.\n", optopt);
     51                        else if (isprint (optopt))
     52                                fprintf (stderr, "Unknown option `-%c'.\n", optopt);
     53                        else
     54                                fprintf (stderr, "Unknown option character `\\x%x'.\n", optopt);
     55                        return 1;
     56                default:
     57                        abort ();
     58                }
    5159        }
    5260
    53         off_t len;
    54         do {
    55             len = wandio_read(ior, buffer, sizeof(buffer));
    56             if (len > 0)
    57                 wandio_wwrite(iow, buffer, len);
    58         } while(len > 0);
     61        iow_t *iow = wandio_wcreate(output, compress_type, compress_level, 0);
     62        /* stdout */
     63        int i;
     64        for(i=optind; i<argc; ++i) {
     65                char buffer[1024*1024];
     66                io_t *ior = wandio_create(argv[i]);
     67                if (!ior) {
     68                        fprintf(stderr, "Failed to open %s\n", argv[i]);
     69                        continue;
     70                }
    5971
    60         wandio_destroy(ior);
    61     }
    62     wandio_wdestroy(iow);
    63     return 0;
     72                off_t len;
     73                do {
     74                        len = wandio_read(ior, buffer, sizeof(buffer));
     75                        if (len > 0)
     76                                wandio_wwrite(iow, buffer, len);
     77                } while(len > 0);
     78
     79                wandio_destroy(ior);
     80        }
     81        wandio_wdestroy(iow);
     82        return 0;
    6483}
Note: See TracChangeset for help on using the changeset viewer.