이름에 특정 숫자가 포함된 테스트 파일

이름에 특정 숫자가 포함된 테스트 파일

폴더에 $folder파일 2012-01,...,2012-N1,2013-01,...,2013-N2등이 포함되어 있다고 가정 해 보겠습니다.

내 스크립트에서 자연수를 요청 M하고 다음을 수행하고 싶습니다.

if the files 20M-* exist
then ask for other natural number M2 and
   if the file 20M-M2 exists
   then open it
else warning msg

파일이 많이 변경되기 때문에 내 case테스트는 그렇게 동적이지 않습니다.

어떤 아이디어가 있나요? 감사해요.

답변1

나는 이것을 더 우아하게 할 수 있다고 믿습니다. 독자를 위한 연습으로 남겨두겠습니다. :피

echo M?
read M
for f in 20"$M"-*
do
    if [ -e "$f" ]
    then
        echo M2?
        read M2
        for f in 20"$M"-"$M2"
        do
            if [ -e "$f" ]
            then
                echo SUCCESS
                cat "$f"
                exit
            fi
        done
        echo FAIL: There is no file for 20"$M"-"$M2"
        exit 1
    fi
    echo FAIL: There is no file for 20"$M-*"
    exit 1
done

관련 정보