대시의 어떤 부분이 POSIX 표준의 일부가 아닌가?

대시의 어떤 부분이 POSIX 표준의 일부가 아닌가?

나는 dash가 POSIX 표준을 매우 엄격하게 따른다는 것을 알고 있지만 추가 기능 없이는 100.00% 엄격한 POSIX가 아니라는 것을 알고 있습니다. 내가 아는 한, 가장 가까운/완전히 POSIX 호환 쉘은 올바른 POSIXly 플래그가 설정된 mrsh 또는 yash입니다.

이제 POSIX 표준에 지정되지 않은 대시의 부분/기능이 무엇인지 정확히 알고 싶습니다(전체 내용을 읽지 않고).POSIX.1-2017및 대시의 소스 코드).

나는 (주제에 대한 나의 지식이 있는 한) 인터넷 검색을 광범위하게 시도했지만 누가 생각했을 것입니까? 그것은 bash와 dash의 차이점과 dash가 POSIX와 얼마나 잘 호환되는지 등에 관한 것입니다.

답변1

dash다음은 POSIX.1-2017에 명시된 추가 기능 목록과 내장 기능의 시작 부분입니다.

  • 변수 및 옵션의 로컬 범위 지정은 내장된 지원을 통해 지원됩니다 local(1989년 원래 Ash부터).
  • -V특정 / 옵션은 (일부 버전에서) -E, 의 -o vi별칭 으로 지원됩니다 -o emacs.
  • -I별칭으로 -o ignoreeof(모든 옵션에는 단일 문자가 있으므로 에서 추적할 수 있으며 $-이를 현지화하는 데 사용할 수 있습니다 local).
  • 지원 -p/ -o privileged옵션.
  • -l로그인 셸로 시작하는 옵션
  • echo-n옵션을 지원 합니다
  • 옵션 read을 지원 합니다-p prompt
  • printf지시문을 지원 합니다 %f/e/E/g/G.
  • 그리고 echo출력 ESC를 지원합니다 printf.\e
  • 그것은 [/ , , , , 연산자를 test지원합니다-ef-nt-ot<>
  • ulimitPOSIX에서 지정한 더 많은 옵션을 지원합니다 .
  • 프로세스 MAIL, MAILCHECK, MAILPATH변수.

관련 정보