리눅스 쉘(터미널)에서는 명령어 안에 명령어를 사용할 수 있다. 이 기능을 이용하면 어떤 명령어의 결과를 명령어 안에 넣을 수 있다.
find $(cat list.txt)
여기서 주의할 점이 하나 있는데, $() 을 큰 따옴표로 묶냐 안묶냐에 따라 결과가 바뀔 수 있다는 것이다. 예를 들어, list.txt에
finding directory
이런 내용이 들어있다고 하자.
find "$(cat list.txt)"
에서 $(cat list.txt)가 finding directory로 치환되어서
find "finding directory"
이 명령이 실행될 것이고 finding directory라는 이름의 파일 혹은 디렉토리를 찾아낼 것이다.
하지만, 큰 따옴표가 없이 실행하면,
find $(cat list.txt)
에서 $(cat list.txt)가 finding directory로 치환되어서
find finding directory
이 명령이 실행될 것이고 finding 이라는 이름의 파일 혹은 디렉토리를 찾고 그 다음 directory 이라는 이름의 파일 혹은 디렉토리를 찾을 것이다.
큰 따옴표를 쓰냐 쓰지 않냐로 큰 변화가 있을 수 있음에 유의하자!