如何拆分这类命令行参数?

对于用户输入的命令,如go build -gcflags='-N -l',如何拆分成gobuild-gcflags='-N -l'?由于-N -l中包含空格,因此无法直接使用strings.Fields函数拆分。

下面有一些命令和拆分方式的举例

  • go build -gcflags '-N -l'-->["go","build","-gcflags","-N -l"]
  • go build --gcflags="-N -l" -ldflags '-w'-->["go","build","--gcflags=\"-N -l\"","-ldflags","-w"]
已邀请:

voidint - https://github.com/voidint

赞同来自:

对于这类比较复杂的命令行参数,如果让我们来实现,怎么拆分并生成os.Args的值?

要回复问题请先登录注册