Я чувствую, что просто упускаю что-то очень глупое и не цитирую / не экранирую что-то, как я должен, но я сейчас читаю и тестирую в течение solid времени и просто не могу заставить это работать ,
У меня есть файл CSV с данными, подобными приведенным ниже:
TESTING.csv
17A3120UAXF-AA002771,9911017093
S150Y52157201,9911008933
17A3120UAXF-AA004545,9911016519
S170Y13084226,9911024365
S160Y45021270,9911018486
Для первой части моего сценария я нужно прочитать вторую переменную (ie. элементы, начинающиеся с "99110 ...")
Я анализирую эти данные в CURL, в то время как l oop для последовательности по всем строкам в файле. Мой сценарий bash похож на приведенный ниже:
#!/bin/bash
while IFS=, read -r device account; do
echo "device : $device"
echo "account : $account"
curl -X GET --header "Content-Type: application/json" --user username:password --verbose 'https://www.website.com:8444/api/subscriber?account=$account'
done < TESTING.csv
Проблема, с которой я сталкиваюсь, заключается в том, что в то время как операторы "echo" могут правильно извлекать / показывать переменную, которую я Я хочу передать, эта же информация не передается в мои команды CURL. Когда я запускаю свой скрипт, вывод выглядит так:
device : 17A3120UAXF-AA002771
account : 9911017093
* About to connect() to www.website.com port 8444 (#0)
* Trying 8.8.8.8...
* Connected to www.website.com (8.8.8.8) port 8444 (#0)
* Server auth using Basic with user 'username'
> GET /api/subscriber?account=$account HTTP/1.1
> Authorization: Basic madeUpJunkAndNumbers12345==
> User-Agent: curl/7.29.0
> Host: www.website.com:8444
> Accept: */*
> Content-Type: application/json
>
< HTTP/1.1 404 Not Found
< Content-Type: application/json
< Content-Length: 0
<
* Connection #0 to host www.website.com left intact
^C