date:错误变量上的额外操作数错误

时间:2018-04-11 20:28:55

标签: linux bash ubuntu amazon-s3

我正在编写一个脚本,根据S3创建日期从S3中删除桶对象,但更重要的是它们的文件类型。我一直收到错误:

 date: extra operand 'PREBACKups2/' 
 Try 'date --help' for more information.

这真的很有趣,因为我没有接近那个。 这是我在CLI上输入的内容:

./s3DeleteByDate "sqlbackup.sql07.useast1/Backups2" "2m"

这是我正在使用的代码库:

#!/bin/bash

# Usage: ./s3DeleteByDate "bucketname" "2m"

aws s3 ls s3://$1 | grep " DIR " -v | while read -r line;
 do
  createDate=`echo $line|awk {'print $1" "$2'}`
  createDate=`date -d -f "%Y-%m-%d %H:%M" "$createDate" +%s`
  olderThan=`date -d $2 +%s`
  if [[ $createDate -lt $olderThan ]]
   then
     fileName=`echo $line|awk {'print $4'}`
     if [[ $fileName == "" ]]
      then
        printf 'Deleting "%s"\n' $fileName
        aws s3 rm  "$fileName" --exclude "*" --include "*.tmp"
     fi
  fi
done;

现在我很确定它实际上是在查看数据,但在执行之前会以某种方式崩溃。

0 个答案:

没有答案