롱 옵션을 임의로 단축할 수 있나요?

롱 옵션을 임의로 단축할 수 있나요?

긴 옵션을 GNU 옵션 규칙이나 다른 규칙/표준의 일부로 임의로 단축할 수 있습니까, 아니면 일부 특수 C 함수에 의해 제공됩니까?

예를 들어 행동 pythonawk행동은 왜 다른가요?

$ python --version
Python 2.7.12
$ python --versio
Unknown option: --
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Try `python -h' for more information.

$ awk --version
GNU Awk 4.1.3, API: 1.1 (GNU MPFR 3.1.4, GNU MP 6.1.0)
$ awk --versi
GNU Awk 4.1.3, API: 1.1 (GNU MPFR 3.1.4, GNU MP 6.1.0)

감사해요.

답변1

이것은 GNU libc의 기능입니다.getopt_long 맨페이지:

약어가 고유하거나 정의된 일부 옵션과 정확히 일치하는 경우 긴 옵션 이름을 약어로 사용할 수 있습니다.

마찬가지로, GNU libc의 Argp 인터페이스도 약어 옵션을 허용합니다(비록 프로그램이 정말로 관심이 있다면 이를 거부할 수 있지만).

에서 언급했듯이xclip 명령줄의 축약된 긴 옵션, xlib는 동일한 작업을 수행하므로 xclock -dig -bri와 동일합니다 xclock -digital -brief.

스크립트에서 이 작업을 수행하는 것을 권장하지 awk --ver않습니다 awk --verbose.

Python은 아마도 자체 인수 구문 분석기를 작성했을 것으로 추정되며, 이는 glibc를 사용하지 않는 시스템에 이식될 수 있습니다. 그들은 GNU GPL 라이센스를 사용하지 않기 때문에 glibc를 빌릴 수 없습니다.

관련 정보