无法识别的选项错误:shell中的getopt命令

用户

我是Shell和Linux的新手,如果有人可以帮助我找到命令中的错误,那将是很棒的:

if ! options=$(getopt -n myscript -l a:,b:,cc:,dd:,ee:,ff:,gg:,hh: -- "$@"); then exit 1; fi

我收到一条错误消息:

mhagent: unrecognized option '--hh'
options=' --aa '\''val1'\'' --ibb '\''val2'\'' --cc '\''val4'\'' --dd '\''val4'\'' --ee '\''val5'\'' --ff '\''val6'\'' --gg '\''val7'\'' --'

如果删除最后一个选项:嗯,它工作正常。

if ! options=$(getopt -n myscript -l a:,b:,cc:,dd:,ee:,ff:,gg: -- "$@"); then exit 1; fi
德鲁伊

免责声明:此答案假定您使用的getopt是util-linux。

好的,这一点都不明显,但是您必须指定一个optstring(即您要接受的简短选项列表)。假设您不想接受任何短选项,只需传递一个空字符串即可。

简介:

getopt optstring parameters
getopt [options] [--] optstring parameters
getopt [options] -o|--options optstring [options] [--] parameters

请注意,所有3种形式均需要optstring。

由于您需要通过-l,因此必须使用带有选项的选项之一,因此对getopt的调用应为:

getopt -n myscript -l a:,b:,cc:,dd:,ee:,ff:,gg:,hh: -- '' "$@"

或者:

getopt -n myscript -l a:,b:,cc:,dd:,ee:,ff:,gg:,hh: -o '' -- "$@"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

gcc:错误:无法识别的命令行选项“ -combine”

来自分类Dev

gcc:错误:无法识别的命令行选项

来自分类Dev

gcc:错误:无法识别的选项--wrap

来自分类Dev

cc1plus:错误:g ++无法识别的命令行选项“ -fsysroot = <路径>”

来自分类Dev

cc1plus:错误:无法识别的命令行选项“ -std = c ++ 11”

来自分类Dev

R gputools:gcc:错误:无法识别的命令行选项“ -Wp”

来自分类Dev

pip错误:无法识别的命令行选项'-fstack-protector-strong'

来自分类Dev

生成内核映像时,由于无法识别的命令行选项'-mlongcalls'而出现错误

来自分类Dev

gcc使用pkg-config引发“无法识别的命令行选项”错误

来自分类Dev

cc1plus:错误:g ++无法识别的命令行选项“ -fsysroot = <路径>”

来自分类Dev

libmad-gcc:错误:无法识别的命令行选项'-fforce-mem'

来自分类Dev

Ubuntu终端-gcc:错误:无法识别的命令行选项'--showme:link'

来自分类Dev

g ++-5.real:错误:无法识别的命令行选项'-pthread-lQtGui'

来自分类Dev

cc1:错误:无法识别的命令行选项'-std = c11'

来自分类Dev

g++.exe:错误:无法识别的命令行选项

来自分类Dev

NVIDIA Jetson TX2 中无法识别的命令行选项“-m64”

来自分类Dev

无法识别的命令行选项'-std = c ++ 11'

来自分类Dev

无法识别的命令行选项“ -WI”

来自分类Dev

运行dotnet ef命令时无法识别的选项'-Context'

来自分类Dev

Powershell中无法识别的令牌错误

来自分类Dev

Powershell中无法识别的令牌错误

来自分类Dev

无法识别的选项或错误的args数量:'--evalsha'

来自分类Dev

Behat“无法识别的选项”

来自分类Dev

Avconv无法识别的选项

来自分类Dev

cc1plus:错误:无法识别的命令行选项“ -std = c ++ 0x”

来自分类Dev

cc1plus:错误:带有hxcpp的无法识别的命令行选项“ -stdlib = libstdc ++”

来自分类Dev

mips64el-linux-android-g++:错误:无法识别的命令行选项“-mfpu=neon”

来自分类Dev

Django中的YouTube搜索-> manage.py:错误:无法识别的参数:shell

来自分类Dev

manage.py collectstatic:错误:无法识别的参数:--noinput在由Docker启动的shell脚本中

Related 相关文章

  1. 1

    gcc:错误:无法识别的命令行选项“ -combine”

  2. 2

    gcc:错误:无法识别的命令行选项

  3. 3

    gcc:错误:无法识别的选项--wrap

  4. 4

    cc1plus:错误:g ++无法识别的命令行选项“ -fsysroot = <路径>”

  5. 5

    cc1plus:错误:无法识别的命令行选项“ -std = c ++ 11”

  6. 6

    R gputools:gcc:错误:无法识别的命令行选项“ -Wp”

  7. 7

    pip错误:无法识别的命令行选项'-fstack-protector-strong'

  8. 8

    生成内核映像时,由于无法识别的命令行选项'-mlongcalls'而出现错误

  9. 9

    gcc使用pkg-config引发“无法识别的命令行选项”错误

  10. 10

    cc1plus:错误:g ++无法识别的命令行选项“ -fsysroot = <路径>”

  11. 11

    libmad-gcc:错误:无法识别的命令行选项'-fforce-mem'

  12. 12

    Ubuntu终端-gcc:错误:无法识别的命令行选项'--showme:link'

  13. 13

    g ++-5.real:错误:无法识别的命令行选项'-pthread-lQtGui'

  14. 14

    cc1:错误:无法识别的命令行选项'-std = c11'

  15. 15

    g++.exe:错误:无法识别的命令行选项

  16. 16

    NVIDIA Jetson TX2 中无法识别的命令行选项“-m64”

  17. 17

    无法识别的命令行选项'-std = c ++ 11'

  18. 18

    无法识别的命令行选项“ -WI”

  19. 19

    运行dotnet ef命令时无法识别的选项'-Context'

  20. 20

    Powershell中无法识别的令牌错误

  21. 21

    Powershell中无法识别的令牌错误

  22. 22

    无法识别的选项或错误的args数量:'--evalsha'

  23. 23

    Behat“无法识别的选项”

  24. 24

    Avconv无法识别的选项

  25. 25

    cc1plus:错误:无法识别的命令行选项“ -std = c ++ 0x”

  26. 26

    cc1plus:错误:带有hxcpp的无法识别的命令行选项“ -stdlib = libstdc ++”

  27. 27

    mips64el-linux-android-g++:错误:无法识别的命令行选项“-mfpu=neon”

  28. 28

    Django中的YouTube搜索-> manage.py:错误:无法识别的参数:shell

  29. 29

    manage.py collectstatic:错误:无法识别的参数:--noinput在由Docker启动的shell脚本中

热门标签

归档