我想将扩展名为.PDF的Amazon S3存储桶中的所有文件重命名为.pdf(小写)。
有人已经必须这样做吗?文件很多(大约1500个)。 S3cmd是执行此操作的最佳方法吗?你会怎么做?
答案 0 :(得分:1)
geometry
new_col
foo POINT (7 8)
foo POINT (10 12)
bar POINT (16 13)
bar POINT (16 14)
一个本地linux / unix示例,用于将所有扩展名为 s3cmd --recursive ls s3://bucketname |
awk '{ print $4 }' | grep "*.pdf" | while read -r line ; do
s3cmd --recursive mv s3://<s3_bucketname>/$line/ s3://<s3_bucketname>/${line%.*}".PDF"
done
的文件重命名为.pdf
。
.PDF
之前
mkdir pdf-test
cd pdf-test
touch a{1..10}.pdf
脚本文件 grep.sh
ls
a1.pdf a2.pdf a4.pdf a6.pdf a8.pdf grep.sh
a10.pdf a3.pdf a5.pdf a7.pdf a9.pdf
添加权限并尝试
#/bin/bash
ls |grep .pdf | while read -r line ; do # here use ls from s3
echo "Processing $line"
# your s3 code goes here
mv $line ${line%.*}".PDF"
done
之后
chmod u+x grep.sh
./grep.sh
您可以应用相同的逻辑。而不是ls
a1.PDF a2.PDF a4.PDF a6.PDF a8.PDF grep.sh
a10.PDF a3.PDF a5.PDF a7.PDF a9.PDF
使用s3 mv
。