source 명령어와 sh 명령어와 ./ 명령어의 차이

About_work·2024년 3월 6일
0

cs 기초

목록 보기
31/38
  • source 명령어: 현재 셸 세션에서 스크립트 파일을 실행합니다. source를 사용하면 스크립트 내에서 정의된 변수, 함수, 환경 설정 등이 현재 셸에 적용됩니다. 새 셸을 시작하지 않고, 현재 셸의 환경을 변경하거나 업데이트할 때 사용됩니다.

  • sh 명령어: 새로운 셸을 시작하여 스크립트를 실행합니다. sh 뒤에 스크립트 파일명을 지정하면, 해당 스크립트는 sh 셸(또는 호환 셸)에서 새로운 프로세스로 실행됩니다. 이 경우, 스크립트 실행이 완료된 후 변경된 환경 설정이 현재 셸에는 영향을 미치지 않습니다.

  • ./ 명령어: 현재 디렉토리에서 스크립트나 실행 파일을 실행합니다. ./는 현재 디렉토리를 나타내며, 이를 스크립트나 실행 파일명 앞에 붙여 사용합니다. 이 방식으로 실행할 때는 파일에 실행 권한이 설정되어 있어야 하며, 대부분의 경우 새 셸 프로세스가 아닌 현재 셸의 자식 프로세스로 실행됩니다.

간단히 말하면, source는 현재 셸 환경에서 스크립트를 실행하여 변경사항을 적용하는 데 사용되며, sh는 새 셸 프로세스에서 스크립트를 실행합니다. ./는 현재 디렉토리에 있는 실행 파일이나 스크립트를 실행할 때 사용되며, 이 또한 현재 셸의 자식 프로세스로 실행됩니다.

profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글