1*21020Slibs /* 2*21020Slibs * mkindx.c - utility to format a nice index to source files, etc. 3*21020Slibs * 4*21020Slibs * usage: mkindx "title string" [file_name] [filename] ..... 5*21020Slibs */ 6*21020Slibs 7*21020Slibs # include <stdio.h> 8*21020Slibs 9*21020Slibs char id_mkindx[] = "@(#)mkindx.c 1.1"; 10*21020Slibs 11*21020Slibs char list[10000] = "pwd >>index; echo \" \" >>index; ls -l "; 12*21020Slibs char *apndx = ">>index"; 13*21020Slibs char *cp = list; 14*21020Slibs extern char *ctime(); 15*21020Slibs FILE *fopen(), *index; 16*21020Slibs 17*21020Slibs main (argc, argv) 18*21020Slibs char **argv; 19*21020Slibs { 20*21020Slibs short i; 21*21020Slibs long time(), t; 22*21020Slibs 23*21020Slibs if (index = fopen ("index", "w")) 24*21020Slibs { 25*21020Slibs fprintf (index, "\n\n\n\n\n\n\n\n\n"); 26*21020Slibs center (argv[1]); /* center title on page */ 27*21020Slibs t = time(0); 28*21020Slibs center (ctime(&t)); /* center date & time */ 29*21020Slibs fprintf (index, "\n"); 30*21020Slibs fclose (index); 31*21020Slibs while (*cp) cp++; /* find end of shell command */ 32*21020Slibs for (i = 2; i < argc; i++) 33*21020Slibs { 34*21020Slibs while (*argv[i]) *cp++ = *(argv[i]++); 35*21020Slibs *cp++ = ' '; 36*21020Slibs } 37*21020Slibs while (*apndx) *cp++ = *apndx++; 38*21020Slibs *cp = '\0'; 39*21020Slibs system (list); 40*21020Slibs } 41*21020Slibs else fprintf (stderr, "mkindx: can't open index\n"); 42*21020Slibs } 43*21020Slibs 44*21020Slibs center (string) 45*21020Slibs char *string; 46*21020Slibs { 47*21020Slibs short pad; 48*21020Slibs 49*21020Slibs pad = (72 - strlen(string)) >> 1; 50*21020Slibs while (pad-- > 0) fputc(' ', index); 51*21020Slibs fprintf (index, "%s\n", string); 52*21020Slibs } 53