xyz.PDF 파일이 있으면 작동합니다.
[ -e *.PDF* ] && echo 'yes'
그러나 다음과 같은 두 개의 파일이 있는 경우
xyz.PDF
abc.PDF
알겠어요
$ [ -e *.PDF* ] && echo 'yes'
-bash: [: sometstgg.PDF: binary operator expected
이 문제를 해결하고 1개 이상의 파일을 허용하려면 어떻게 해야 합니까?
답변1
set -- *.PDF
[ "$#" -gt 0 ] && [ "$*" != "*.PDF" ] && echo 'yes'
아마도 더 나은 해결책이 있을 것입니다. *.PDF
실제 이름이 있는 항목이 있으면 실패할 것이기 때문입니다.
bash
그 정도면 충분하다고 생각 하니까
shopt -s nullglob
set -- *.PDF
[[ "$#" -gt 0 ]] && echo yes
에서는 ksh93
이것으로 충분해 보입니다:
[ -e *.PDF ] && echo yes