이 루프가 한 번에 하나의 파일을 처리하지 않는 이유는 무엇입니까?

이 루프가 한 번에 하나의 파일을 처리하지 않는 이유는 무엇입니까?

다양한 파일이 포함된 디렉터리가 있습니다.

main.js
SomeClass.js
View.jsx

모든 .jsx 파일을 반복하고 싶습니다. 그래서 저는 다음 Bash 스크립트를 작성했습니다.

for JSX_FILE in "$BUILD_DIR/*.jsx"; do   
    echo $JSX_FILE
    echo "PATH: $JSX_FILE"
    JSX_FILENAME=$(basename "$JSX_FILE")
    echo "NAME: $JSX_FILENAME"
done

그러나 어떤 이유에서인지 다음과 같이 인쇄됩니다.

/경로/to/View.jsx

경로:/path/to/*.jsx

이름: *.jsx

$JSX_FILE그래서 어떤 경우에는 가치가 있고 /path/to/View.jsx다른 경우에는 가치가 있는 이유를 이해하지 못합니다 /path/to/*.jsx. 이 변수가 루프의 모든 위치에서 동일한 값을 갖도록 하려면 어떻게 해야 합니까?

답변1

glob을 참조하면 globbing이 억제됩니다.

for JSX_FILE in "$BUILD_DIR"/*.jsx; do   

관련 정보