리눅스 쉘

shell 명령어 중에 $(명령어) 이런식으로 표기되어 쓰는 경우가 있다. 예를 들어 도커에서 호스트의 모든 컨테이너들을 한꺼번에 지우고 싶을때 docker container rm $(docker container ls -a -q) 라고 명령어를 사용할 수 있다. 이때 $() 안에 있는 명령어가 먼저 실행된 후 , 바깥의 명령어가 실행된다. 모든 컨테이너의 id를 출력해주고 이를 다시 대체하여 argument 로 쓸 수 있다는 의미이다. 즉, docker container rm $(docker container ls -a -q) 는 docker container rm AAA BBB CCC DDD 와 같다. 따라서 명령어를 실행하면 결과적으로 AAA BBB CCC DDD 컨테이너가 모두 삭제될 것이다 !
minjiwoo
'리눅스 쉘' 태그의 글 목록