디렉토리 구조 /year/month/date.db에서 파일 범위를 선택하십시오.

디렉토리 구조 /year/month/date.db에서 파일 범위를 선택하십시오.

내 데이터베이스는 디렉터리 구조에 저장되어 있습니다.

년/월/일.db

예는 다음과 같습니다

디비/2013/10/15.db

스크립트를 사용하여 그 안의 파일 범위를 선택할 수 있어야 합니다("dbSelect 2013/09/01.db 2013/10/15.db"는 이 날짜 사이의 모든 .db 파일을 출력해야 합니다.

이 문제를 어떻게 해결할 수 있는지에 대한 아이디어가 있습니까?

답변1

이것이 내가 할 일이다. 더 나은/더 우아한 솔루션이 있을 수 있습니다. 스크립트는 "db" 디렉터리에서 실행되어야 합니다.

#!/bin/bash

STARTDATE="2013/09/01"
ENDDATE="2013/10/15"

day=0

while [ "$DATE" != "$ENDDATE" ]; do
        DATE=`date --date="$STARTDATE + $day days" +%Y/%m/%d`
        if [ -f "$DATE.db" ]; then
                # This only echoes the file name, you might want to do something else here
                echo "$DATE.db"
        fi
        day=$(($day+1))
done

편집: "./dbSelect.sh 2013/09/01 2013/10/15" 매개변수를 허용하려는 경우:

#!/bin/bash

STARTDATE="$1"
ENDDATE="$2"

day=0

while [ "$DATE" != "$ENDDATE" ]; do
        DATE=`date --date="$STARTDATE + $day days" +%Y/%m/%d`
        if [ -f "$DATE.db" ]; then
                # This only echoes the file name, you might want to do something else here
                echo "$DATE.db"
        fi
        day=$(($day+1))
done

관련 정보