当前位置:软件学习 > 其它软件 >>

开始写个shell

每天都坚持写代码是好习惯,现在开始写个小shell。
 
用到之前看GNU软件源码的一些技巧。
 
 
[html]  
/**  
 *  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);  
}  
 
补充:软件开发 , 其他 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,