diff options
author | Thomas Bächler <thomas@archlinux.org> | 2006-08-04 13:22:16 +0200 |
---|---|---|
committer | Thomas Bächler <thomas@archlinux.org> | 2006-08-04 13:22:16 +0200 |
commit | b81b2b920d300f1cb292fecf96e9d590497607f8 (patch) | |
tree | dabd9f0256e0775bbd7344d3997f917f97bc5e3c /subs/subs.c | |
parent | e9aa72aef50d72b8bb358cd5ef126d3ce9c64635 (diff) | |
download | mkinitcpio-b81b2b920d300f1cb292fecf96e9d590497607f8.tar.gz mkinitcpio-b81b2b920d300f1cb292fecf96e9d590497607f8.tar.xz |
Solved IFS issues
git-svn-id: http://projects.archlinux.org/svn/initramfs/mkinitcpio@139 880c04e9-e011-0410-abf7-b926e227c9cd
Diffstat (limited to 'subs/subs.c')
-rw-r--r-- | subs/subs.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/subs/subs.c b/subs/subs.c new file mode 100644 index 0000000..03f05c5 --- /dev/null +++ b/subs/subs.c @@ -0,0 +1,42 @@ +#include <strings.h> +#include <stdio.h> +#include <unistd.h> + +void usage(char *name) +{ + fprintf(stderr,"Usage:\n\t%s [-n <character>] [-w <character>] <string>\n",name); +} + +int main(int argc, char *argv[]) +{ + char *h,n=':',w=' '; + int c; + + while((c=getopt(argc, argv, "n:w:"))!=-1) + switch(c) + { + case 'n': + n=optarg[0]; + break; + case 'w': + w=optarg[0]; + break; + default: + usage(argv[0]); + return 1; + } + + if(optind>=argc) + { + usage(argv[0]); + return 1; + } + + h=argv[optind]; + while( (h=index(h, n)) !=NULL ) + *h++=w; + + printf("%s",argv[optind]); + + return 0; +} |