날짜 접두사가 있는 폴더가 포함된 s3 버킷이 있습니다. 예를 들어-
bucket_name
--> 2021-11-01
--> 2021-11-02
--> 2021-11-03
--> 2021-11-04
...
...
--> 2021-11-10
내 생각은 전체 폴더가 7일이 지난 경우 포함된 개체를 정리해야 한다는 것입니다. 그래서 난 그냥 찾아야 해이 버킷 내의 폴더 이름날짜를 확인하고 내용을 삭제하세요.
전체 코드:
aws s3 ls s3://$S3_PATH/ | while read -r line; do
# Get file creation date
createDate=`echo $line|awk {'print $1" "$2'}`
createDate=`date -d"$createDate" +%s`
if [[ $createDate -lt $DELETETION_TIMESTAMP ]]
then
# Get file name
FILENAME=`echo $line|awk {'print $4'}`
if [[ $FILENAME != "" ]]
then
echo " -> Deleting $FILENAME"
aws s3 rm --recursive s3://S3_PATH/$createDate/
fi
fi
done;
실수:만약 내가한다면echo $createDate
날짜: 잘못된 날짜 'PRE 2021-11-01/'
편집하다:
echo $line
반품
PRE 2021-11-01/
2021-11-01 15:10:15 0