Скрипт Bash CURL Запрашивает файл, который не удалось открыть/прочитать локальные данные из файла/приложения

#bash #curl

Вопрос:

У меня есть скрипт bash, который просматривает все файлы в каталоге и делает запрос curl на какой-либо URL

 for FILE in ./files/*;
    do  
        echo "Making a request..."
        echo $FILE

        curl --location --request POST "${URL}" 
        --form 'file=@"${FILE}"' 

        sleep 100
    done

echo "done!"
 

Запрос на завиток был скопирован у почтальона, так что я уверен, что он работает.

Когда я запускаю сценарий, я получаю следующее

 Making a request...
./files/split1.csv
curl: (26) Failed to open/read local data from file/application
 

Проблема, с которой я сталкиваюсь, заключается в том, как здесь обрабатывать интерполяцию строк.

Ответ №1:

Вы очень близки, просто удалите одинарные кавычки, чтобы заставить работать интерполяцию строк.

 curl --location --request POST "${URL}" 
--form file=@"${FILE}"