본문 바로가기
IT/Linux

sh 명령어와 ./ 의 차이

by 성준하이 2024. 9. 26.
반응형

쉘스크립트를 실행하게 될 경우 sh 명령어를 사용하거나 ./ 를 사용한다.

 

사용 예시이다.

 

sh test.sh

./test.sh

 

두 명령어는 같은 동작을 하지만 각각 장단점이 있을것 같아서 작성한다.

(지극히 개인적인 주관입니다)

 

./ 명령어
  • 실행 방식
    ./는 실행 파일(스크립트 포함)을 직접 실행하는 방식입니다. 이 방법을 사용하려면 스크립트에 실행 권한이 있어야 한다.
    (chmod +x script.sh로 설정)
  • 장점
    • 스크립트가 어느 셸에서 실행될지 스크립트 상단의 #!(쉐뱅)으로 정의할 수 있다.
      예를 들어, #!/bin/bash라고 쓰면 Bash 셸에서 실행된다.
    • 환경 변수 등 스크립트 내에서 정의한 설정이 그대로 유지된다.
sh 명령어
  • 실행 방식
    sh는 Bourne 셸에서 스크립트를 실행한다.
    이때 스크립트가 실행 가능 권한이 없어도 실행된다.
  • 장점
    • 스크립트가 실행 권한이 없어도 sh script.sh로 실행할 수 있다.
    • 스크립트가 다른 셸에서 실행되어야 할 경우에도 sh로 강제적으로 Bourne 셸에서 실행할 수 있다.
    • 간단한 테스트나 특정 환경에서 스크립트를 실행할 때 유용할 수 있다.

 


참고 포스팅

https://thenicesj.tistory.com/209

 

쉘 스크립트란?

먼저 쉘에 대한 개념을 잘 이해하지 못했다면 아래 참고 포스팅에서 쉘에 대한 내용을 먼저 잡고 오는것을 추천한다. 쉘 프로그래밍이란 쉘에서 사용되는 여러 명령어를 모아 하나의 파일로 만

thenicesj.tistory.com

 

반응형

'IT > Linux' 카테고리의 다른 글

심볼릭 링크 소유권 변경(chown)  (9) 2024.10.16
[NextCloud] [Error] Internal Server Error 발생 시  (17) 2024.10.12
OS 별 network 재시작 관련  (9) 2024.08.31
우분투에 Odoo 설치  (15) 2024.08.23
wheel그룹/권한  (13) 2024.07.03

댓글