Unix 명령을 작성하는 데 어떤 언어가 사용됩니까?

Unix 명령을 작성하는 데 어떤 언어가 사용됩니까?

내가 언급하는 명령의 예는 ls, pwd및 입니다 cd. 또한, 이것들은 어떻게 구성되어 있나요? 어떤 예가 있나요?

답변1

일반적으로 매우 간단합니다 C. (대부분?) Linux 배포판(및 기타 시스템) 의 명령 ls및 패키지. 코드는 다음에서 찾을 수 있습니다.pwdGNU Coreutils그들의 홈페이지.

특히 coreutils일반적인 단계에 따라 빌드할 수 있습니다. 소스 코드의 압축을 푼 후 다음을 실행하세요.

./configure --prefix=/some/path
                   # type ./configure --help to get the available options
make
make install       # could require root access depending on the path you used

주의하세요. 배포본에 기본 유틸리티를 설치하는 것은 어렵습니다.나쁜 생각. 시스템과 함께 제공되는 패키지 관리자를 사용하십시오. 하지만 다른 접두사에 설치할 수도 있습니다(시도해보고 싶다면 홈 디렉터리의 위치에 설치하는 것이 좋습니다).

참고하시기 바랍니다.cd실행파일이 있습니다, cd대부분의 경우 별도의 실행 파일을 사용하지 않습니다. 이는 쉘에 내장되어야 합니다(그렇지 않으면 쉘의 현재 디렉토리를 변경할 수 없습니다. 이는 프로세스 자체에서 수행되어야 합니다). 따라서 쉘과 동일한 언어로 작성됩니다(일반적으로 그렇습니다 C).

다른 예:

  • 오픈 솔라리스pwd원천.
  • FreeBSDls

이에 대한 자세한 내용은 온라인에서 찾을 수 있습니다.

답변2

Mat의 답변에 약간을 추가하면 Unix는 이를 독립 실행형 프로그램으로 구현하지만 많은 명령도 그 안에 구현됩니다 bash(새 프로세스를 생성해야 하는 것을 저장하기 위해) bash자세한 내용은 매뉴얼 페이지를 참조하거나 확인하십시오.상표.

bashC로도 작성됨

이 명령은 그렇지 않다는 점은 주목할 가치가 있습니다.가지다C로 작성됨 - 실제로 여러 미니 Linux 배포판에서는 C를 사용합니다.lua이들과 다른 것의 구현.

관련 정보