Загрузка файлов на s3 с использованием s3cmd параллельно
У меня есть целая куча файлов на сервере, и я хочу загрузить их на S3. Файлы хранятся с расширением .data, но на самом деле это просто набор jpegs, pngs, zips или pdfs.
Я уже написал короткий скрипт, который находит тип MIME и загружает их на S3, и это работает, но это медленно. Можно ли как-нибудь сделать так, чтобы программа, запущенная ниже, использовала параллельную версию gnu?
#!/bin/bash
for n in $(find -name "*.data")
do
data=".data"
extension=`file $n | cut -d ' ' -f2 | awk '{print tolower($0)}'`
mimetype=`file --mime-type $n | cut -d ' ' -f2`
fullpath=`readlink -f $n`
changed="${fullpath/.data/.$extension}"
filePathWithExtensionChanged=${changed#*internal_data}
s3upload="s3cmd put -m $mimetype --acl-public $fullpath s3://tff-xenforo-data"$filePathWithExtensionChanged
response=`$s3upload`
echo $response
done
Кроме того, я уверен, что этот код может быть значительно улучшен в целом :) Советы обратной связи будет принята с благодарностью.