코드코코

[리눅스] 쉘 스크립트 - 명령어 치환 본문

기록/리눅스

[리눅스] 쉘 스크립트 - 명령어 치환

코드코코 2021. 12. 20. 16:35

명령어 치환(command substitution)

- 서브쉘(subshell)을 사용해서 명령어의 결과를 가져와 대체하는 것.

- 즉, 명령을 수행할 때 명령의 인수로서 다은 명령의 결과를 사용한다.

 

사용방법 2가지

1. 역따옴표(` `) : 백틱(backticks)으로 명령어를 감싸면, 해당 명령어의 결과로 치환되어 그 결과를 변수에 바로 할당 가능
2. $( )

 

예시

- 파일 base.sh 작성

- $script_name 은 basename $0 로 치환, basename $0 은 파일명인 base.sh로 치환되었다.


실행 결과

 

명령어 치환을 통한 Bash 에서 쓸 수 있는 툴셋의 확장

- 표준 출력으로 결과를 출력하는 프로그램이나 스크립트의 결과를 변수로 할당.

 

예시 : C++

 

1. sample 디렉토리 생성 후 hello.cpp 파일 생성, 소유자 및 소유그룹 변경

 

 

2. WSL과 연결된 vscode를 통해 생성확인 혹은 ls -la 명령어를 통해 확인

 

 

3. hello.cpp 내용 작성

 

4. g++ 컴파일러로 컴파일 하기

$ g++ -o 컴파일파일명 컴파일파일명.cpp

 

 

 

5. 컴파일된 파일실행

./컴파일파일명

 

- cpp 파일의 Hello, World.문구가 출력됨