나는 배쉬를 사용하고 있습니다. filelist
파일 목록이 포함된 이라는 파일이 있다고 가정해 보겠습니다 .
stuff/**/*.csv # to keep it simple (without loops), assume just one entry
#*.txt
#foo.md
#bar.bin
나는 이것에 대해 확장하고 싶습니다 :
ls $(cat filelist)
나는 얻다:
ls: 'stuff/**/*.csv'에 액세스할 수 없습니다: 해당 파일이나 디렉터리가 없습니다
내가 원하는 것은 처리를 위해 기본 애플리케이션으로 전송할 수 있는 파일 목록으로 이것을 확장하는 것입니다. 어떻게 해야 하나요?
답변1
내 생각엔 재귀적 와일드카드를 사용하고 싶은 것 같군요 **
. 그렇죠? 그러나 이 기능은 Bash에서 기본적으로 활성화되어 있지 않으며 ( 및 shopt -s globstar
유사 ) 를 통해 활성화해야 합니다 . 다음을 사용하여 값을 확인할 수도 있습니다.dotglob
extglob
shopt globstar
(또는 댓글의 제안 shopt |grep glob
에 응답하세요 . .와 .의 차이점을 참고하세요 .)set -o |grep glob
shopt
set -o