我们用到的LINUX命令:list -l;
main函数:int main(int argc, char* argv[])
可以用int getopt(int argc,char * const argv[ ],const char * optstring);来解析main函数带入的选项,如:-l。
解析时:
while ((c = getopt(argc, argv, "o:t:z:nr")) != -1) {//其中o:表示-o后面还有参数,参数放在 optarg全局变量中。n,r没有其他参数了。switch (c)
{
case 'o':
opt_str = strdup( optarg);
if(strncmp((const char*)opt_str, VERONA_SCIT_UPGRADE_STRING, strlen(VERONA_SCIT_UPGRADE_STRING)) == 0)
{
}
break;
case 't':
tgt_dev = strdup(optarg);
printf("t Not implemented\r\n");
break;
case 'z':
compress_srting = strdup(optarg);
if(strstr(compress_srting, "tarlzma"))
;//CompressType = TYPE_TAR_LZMA;
printf("z Not implemented\r\n");
break;
case 'n': // image file in Nand
printf("[ImageFileInNand mode]\r\n");
isImageFileInNand = 1;
break;
case 'r':
isreboot = 0;
break;
default:
;//usage(progname);
}
}
if(optind < argc)
{
file_path = argv[optind];//optind等于下一个argv指针。
}