想用 linux C 实现类似这样的命令: mysql -u "root" -p "123456"
请大家给点思路,谢谢!
1
Death 2017-09-07 16:54:16 +08:00
getopt
argp suboptions 这几个库都可以 |
2
andychen20121130 2017-09-07 17:02:33 +08:00 1
main(argc *c ,argv[])
|
4
Sanko 2017-09-07 17:06:44 +08:00 via Android
getopt +正则捂脸!
|
5
tsl0922 2017-09-07 17:08:14 +08:00
给你一个自己写的 C 程序里的 getopt 例子: https://github.com/tsl0922/ttyd/blob/master/src/server.c#L236
|
6
seers 2017-09-07 17:09:57 +08:00
```
#include <stdio.h> int main (int argc, char *argv []) { int i; for (i = 1; i < argc; i++) { printf ("%s%s", argv [i], (i < argc -1) ? " " : ""); } printf ("\n"); return 0; } ``` |
7
forcecharlie 2017-09-07 18:30:54 +08:00
getopt 一般就够了,一般 Linux Unix 都是这种。
例子有 https://gitee.com/oschina/svnsrv/blob/master/src/main.cc#L73 chrome style 的用 gflags 还有其他的: https://github.com/fffaraz/awesome-cpp#cli 人肉手写也行 https://gitee.com/oscstudio/git-analyze/blob/master/tools/analyze/driver.cc#L44 https://github.com/fcharlie/Kismet/blob/31981782ccf9a4956082790bd980dd05e22c41dc/Kisasum/argv.cpp 手写也要不了很多代码。 |
8
alqaz 2017-09-08 09:35:15 +08:00
|
9
mch0dmin OP @forcecharlie 谢谢这么详细的回答,非常感谢,我慢慢消化。
|