if 조건을 사용하여 파일 이름의 공백을 무시하는 방법

if 조건을 사용하여 파일 이름의 공백을 무시하는 방법

나는 시도했다:

for item in *
do 
if [ -d  ${item} ]
then 
echo "$item" 
fi
done

공백이 포함된 파일 이름을 읽으면 오류가 인쇄됩니다.

 line 11: [: too many arguments 

답변1

$item이미 수행한 것처럼 견적 확장 echo:

for item in *; do
    if [ -d "$item" ]; then
        echo "$item"
    fi
done

관련된:

/또한 패턴 끝에 를 추가하면 하위 디렉터리가 강제로 일치됩니다(만약아무것성냥).

관련 정보