중복 가능성:
쉘 스크립트를 실행하는 다양한 방법
아래 나열된 명령 간의 구체적인 차이점은 무엇입니까?
./<scriptname>
. <scriptname>
bash <scriptname>
누구든지 이러한 차이점을 간단한 단어로 설명할 수 있습니까?
답변1
./<scriptname>
자식 프로세스에서 실행 <scriptname>
하고 종료될 때까지 기다립니다.
. <scriptname>
<scriptname>
동일한 프로세스에서 실행되며 이를 사용하는 이유는 일반적으로 <scriptname>
새로운 프로세스의 리소스 비용을 발생시키지 않고 환경을 수정하고 추가 작업을 수행할 수 있도록 하기 위한 것입니다.
bash <scriptname>
bash에게 실행하라고 지시하십시오 <scriptname>
. <scriptname>
상단에 bash()에 대한 경로가 있는 shebang이 있으면 을 실행 #!/bin/bash
하는 것과 동일한 효과가 있습니다 <scriptname>
. 다른 인터프리터( ) <scriptname>
를 가리키는 경우 일반적으로 해당 프로그램에 의해 해석되지만 요청하여 재정의합니다. 해석하려면 bash를 사용하세요.#!/bin/sh
<scriptname>