本文主要讲述如何在一个选项后传递多个参数。
示例代码main.c如下,
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(int argc, char ** argv)
{
int result;
opterr = 0;
while ((result = getopt(argc, argv, "a:")) != -1)
{
switch (result)
{
case 'a':
printf("option=a, optarg=%s\n", optopt, optarg);
break;
default:
break;
}
}
return 0;
}
1. 使用字符串
./main -a "123 456 789"
输出如下,
2. 使用逗号
逗号必须是英文逗号,而且逗号后不能跟空格
./main -a 123,456,789
3. 多次调用相同选项
./main -a 123 -a 456 -a 789