Я немного новичок в Bash и cURL и не могу понять, почему этот файл Bash не запускается без выдачи ошибки Unexpected EOF
.
Эта команда cURL должна загрузить большой файл (в примере сценария нижегде-то между 300 и 400 МБ) в 20 МБ чанков на службу хранения.Как только все МБ загружены, вторая команда «завершает» загрузку.Обе команды используют один и тот же GUID.
Внутри upload-bits.sh
:
#!/bin/sh
for i in {0..20}; do
curl -X POST \
https://community.<company>.com/api.ashx/v2/cfs/temporary.json \
-H 'Rest-User-Token: 12345' \
-F UploadContextId=21f23109-aac2-44ef-8b89-c0f62e67da4d \
-F FileName='file.zip' \
-F TotalChunks=20 \
-F CurrentChunk=$i \
-F 'file=@file.zip'
done
Скрипт Bash выдает ошибку Unexpected EOF
.Я попробовал одну команду cURL без Bash-части скрипта и заменил CurrentChunk
на 0
и 1
, но безуспешно.Я также использовал валидатор скрипта, который подтвердил, что в скрипте нет проблем.Я также запустил dos2unix
, чтобы устранить проблемы с окончанием строки.
Я пока не смог использовать этот второй скрипт, так как первый скрипт не работал, но я публикуюэто для контекста, если я не объясняю желаемый общий процесс хорошо.
complete-upload.sh
:
curl -X POST \
https://community.<company>.com/api.ashx/v2/media/371/files.json \
-H 'Rest-User-Token: 12345' \
-F 'Name=file.zip' \
-F ContentType=application/zip \
-F FileName='file.zip' \
-F FileUploadContext=21f23109-aac2-44ef-8b89-c0f62e67da4d
Я был бы благодарен за любые советы или идеи.Спасибо.