2016-06-05 4 views
-1

sed과 같이 동일한 쉘에서 같은 방식으로 동작하지 않는 쉘 명령이 있습니다.쉘 명령이 OS에 따라 다르게 동작하는 이유

명령이지만 해당 동작은 셸이 아닌 OS (* BSD 또는 GNU/Linux)에 따라 다를 수 있습니다. 나는 이것에 궁금하다. 누구든지 쉘 스크립팅이 여러 플랫폼에서 같은 방식으로 작동하지 않는 이유를 설명해주십시오.

+0

BSD와 GNU는 비슷한 바이너리를 가지고 있지만 동일하지는 않습니다. –

+0

예, 알겠습니다. – tsrrhhh

답변

0

서로 다른 시스템은 고유 한 도구와 구문을 어느 정도 발전 시켰습니다. 리눅스는 다양한 현대적인 옵션을 지원하는 GNU 툴체인을 사용합니다. 그러나 리눅스와 BSD (그리고 많은 다른 운영체제)가 공통으로 가지고있는 한가지가 있습니다 : POSIX.

이것은 POSIX specification for sed입니다. 모든 * nix 플랫폼에서 작동하는 것에 의존 할 수 있습니다. 일반적으로 모든 버전의 sed에서 작동하는 방식으로 수행하려는 작업을 수행하는 방법이 있습니다.

awkgawk 사이에 동일한 불일치가 있습니다.

+0

답변을 주셔서 감사합니다 (POSIX에 대해 잘 모름). 이 차이는 은유 적으로, Mac의 Microsoft Word와 Windows의 Microsoft Word의 차이점과 비슷합니까? – tsrrhhh

+0

마이크로 소프트를 제외하고는 마이크로 소프트를 제외하고는 다른 개발 팀이이 각각의 버전 인'sed'와'awk'를 만듭니다. POSIX를 함께 묶는 유일한 방법입니다. 'sed'와'awk'에 대한 * BSD 옵션은 GNU/Linux가 BSD로 작업하는 것보다 GNU/Linux에서 작동 할 확률이 더 높습니다. 덕분에 – Will

+0

! 매우 이해할 수 있습니다. 지금부터는 당신의 의견에 감사 드리며 아버지를 직접 살펴볼 수 있습니다. – tsrrhhh

관련 문제