开始写个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);
}
补充:软件开发 , 其他 ,