Я пытаюсь написать bash-скрипт, который позволит мне загружать несколько веб-страниц, используя curl. Для каждой веб-страницы я хочу иметь возможность передавать curl страницу и ссылку реферера. Я хочу иметь возможность предоставлять несколько веб-страниц одновременно.
Другими словами, я хочу иметь возможность циклически перемещаться по веб-страницам, которые я предоставляю сценарию, и для каждой страницы передавать связанную веб-страницу и ссылку на реферер в curl.
Я подумал, что буду использовать массив для хранения ссылки на веб-страницу и реферер в одной переменной, думая, что затем смогу извлечь отдельные элементы массива при запуске curl.
Моя проблема в том, что я не могу понять, как заставить работать несколько массивов в цикле for. Вот идея того, что я хочу сделать. Этот код не работает, так как «$ i» (в цикле for) не становится массивом.
#every array has the information for a separate webpage
array=( "webpage" "referer" )
array2=( "another webpage" "another referer" )
for i in "${array[@]}" "${array2[@]}" #line up multiple web pages
do
#use curl to download the page, giving the referer ("-e")
curl -O -e "${i[1]}" "${i[0]}"
done
Если бы я работал только с одним массивом, я мог бы легко сделать это так:
array=( "webpage" "referer" )
REFERER="${array[1]}"
PAGE="${array[0]}"
#use curl to download the page, giving the referer ("-e")
curl -O -e "$REFERER" "$LINK"
Когда я хочу обработать сразу несколько веб-страниц, я не могу понять, как это сделать правильно.
Если есть другой способ обработки нескольких веб-страниц без использования массивов и цикла for, пожалуйста, сообщите мне.