Linux에서 프로그램을 실행하는 방법에는 다음 세 가지가 있습니다.
1 파일에 실행 권한을 부여하고 파일을 직접 실행합니다.
chmod 명령은 파일의 권한을 수정하는 데 사용됩니다. +x는 파일을 실행 가능하게 만듭니다. 위에서 프로그램을 실행한 것과 같습니다. 그러나 우리가 본 결과는 우리가 상상했던 것과 다소 달랐습니다.
2. 명령 해석기를 직접 호출하여 프로그램을 실행합니다.
그림과 같이:
우리의 인터프리터는 /bin/sh이므로 sh 명령 인터프리터를 사용하여 프로그램을 실행합니다.
(현재 작업 경로는 변경되지 않았습니다)
(추천 튜토리얼: linux 튜토리얼)
3. 소스를 사용하여 파일을 실행합니다.
그림과 같이:
(현재 작업 경로가 변경되었습니다.)
셸 프로그램을 실행하는 세 가지 방법 중 처음 두 가지 방법의 실행 과정은 다음과 같습니다.
(1 ) 상위 프로세스가 명령을 받았는데 내장 명령이 아닌 것을 발견하여 이 외부 명령을 실행하기 위해 나와 비슷한 쉘 프로세스를 만들었습니다
(2) 이 쉘 하위 프로세스는 /bin/으로 대체되었습니다. sh 및 sh 프로세스는 $PWD 변수를 포함하여 자체 실행 환경 변수를 설정합니다.
(3) sh 프로세스는 내장 명령 cd 및 echo를 순서대로 실행합니다. 이 과정에서 sh 프로세스(자식 프로세스)의 환경 변수는 cd 명령에 의해 변경됩니다.
(4) 하위 프로세스가 실행된 후 대기 중인 상위 프로세스가 깨어나 계속 명령을 받습니다.
분석:
부모 프로세스의 현재 디렉터리(환경 변수)는 자식 프로세스에서 변경할 수 없습니다. 그러나 소스를 사용하여 쉘 스크립트를 실행하면 하위 프로세스가 생성되지 않고 상위 프로세스에서 직접 실행됩니다.
추천 관련 비디오 튜토리얼: linux 비디오 튜토리얼
위 내용은 리눅스에서 쉘 프로그램을 실행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!