[TD-6292]<fix>: taosdump --config-dir determine input. (#7611)
This commit is contained in:
parent
f159933896
commit
8c28632b8b
|
@ -231,9 +231,9 @@ static struct argp_option options[] = {
|
||||||
{"inpath", 'i', "INPATH", 0, "Input file path.", 1},
|
{"inpath", 'i', "INPATH", 0, "Input file path.", 1},
|
||||||
{"resultFile", 'r', "RESULTFILE", 0, "DumpOut/In Result file path and name.", 1},
|
{"resultFile", 'r', "RESULTFILE", 0, "DumpOut/In Result file path and name.", 1},
|
||||||
#ifdef _TD_POWER_
|
#ifdef _TD_POWER_
|
||||||
{"config", 'c', "CONFIG_DIR", 0, "Configure directory. Default is /etc/power/taos.cfg.", 1},
|
{"config-dir", 'c', "CONFIG_DIR", 0, "Configure directory. Default is /etc/power/taos.cfg.", 1},
|
||||||
#else
|
#else
|
||||||
{"config", 'c', "CONFIG_DIR", 0, "Configure directory. Default is /etc/taos/taos.cfg.", 1},
|
{"config-dir", 'c', "CONFIG_DIR", 0, "Configure directory. Default is /etc/taos/taos.cfg.", 1},
|
||||||
#endif
|
#endif
|
||||||
{"encode", 'e', "ENCODE", 0, "Input file encoding.", 1},
|
{"encode", 'e', "ENCODE", 0, "Input file encoding.", 1},
|
||||||
// dump unit options
|
// dump unit options
|
||||||
|
@ -367,6 +367,15 @@ struct arguments g_args = {
|
||||||
false // performance_print
|
false // performance_print
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static void errorPrintReqArg3(char *program, char *wrong_arg)
|
||||||
|
{
|
||||||
|
fprintf(stderr,
|
||||||
|
"%s: option '%s' requires an argument\n",
|
||||||
|
program, wrong_arg);
|
||||||
|
fprintf(stderr,
|
||||||
|
"Try `taosdump --help' or `taosdump --usage' for more information.\n");
|
||||||
|
}
|
||||||
|
|
||||||
/* Parse a single option. */
|
/* Parse a single option. */
|
||||||
static error_t parse_opt(int key, char *arg, struct argp_state *state) {
|
static error_t parse_opt(int key, char *arg, struct argp_state *state) {
|
||||||
/* Get the input argument from argp_parse, which we
|
/* Get the input argument from argp_parse, which we
|
||||||
|
@ -418,9 +427,13 @@ static error_t parse_opt(int key, char *arg, struct argp_state *state) {
|
||||||
g_args.resultFile = arg;
|
g_args.resultFile = arg;
|
||||||
break;
|
break;
|
||||||
case 'c':
|
case 'c':
|
||||||
|
if (0 == strlen(arg)) {
|
||||||
|
errorPrintReqArg3("taosdump", "-c or --config-dir");
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
if (wordexp(arg, &full_path, 0) != 0) {
|
if (wordexp(arg, &full_path, 0) != 0) {
|
||||||
errorPrint("Invalid path %s\n", arg);
|
errorPrint("Invalid path %s\n", arg);
|
||||||
return -1;
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
tstrncpy(configDir, full_path.we_wordv[0], MAX_FILE_NAME_LEN);
|
tstrncpy(configDir, full_path.we_wordv[0], MAX_FILE_NAME_LEN);
|
||||||
wordfree(&full_path);
|
wordfree(&full_path);
|
||||||
|
|
Loading…
Reference in New Issue