每天都坚持写代码是好习惯,现在开始写个小shell。
用到之前看GNU软件源码的一些技巧。
/** * jsh 程序,简单的shell程序 * * created : jeff * date: 2013.1.28 * version: first version * * * * * *********************************************/ #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <getopt.h> #define VERSION \ "jsh version 1.0.0\n"\ #define USAGE\ "Usage: jsh [GNU long option] [option] ...\n\ jsh [GNU long option] [option] script-file ...\n\ long option:\n\ --version\n\ --help\n"\ static struct option longoptions[]= { {"version", 0, NULL,'v' }, {"help", 0, NULL, 'h'} }; void usage(); void version(); int main(int argc, char** argv) { int opt = 0; if(argc <2) usage(); while( (opt=getopt_long(argc,argv,"vh",longoptions, NULL)) !=EOF) { switch(opt) { case 'h': usage(); break; case 'v': version(); break; default: usage(); break; } } return 0; } void usage() { fprintf(stdout, USAGE); } void version() { fprintf(stdout, VERSION); }
作者:littleflasher_jeff 发表于2013-1-28 22:55:33 原文链接
阅读:46 评论:0 查看评论