Bash curl proxy-listar: tak ein aftastandi CR burt úr CRLF-linjum
Les proxy-URL'ir linju fyri linju í Bash og tak ein aftastandi CR burt úr CRLF-fílum, áðrenn virðið verður sent til curl.
Ein linja, sum er kopierað úr eini CRLF-fílu, kann síggja út sum proxy.example:8080, meðan variabulurin í veruleikanum endar við einum carriage return. At seta variabulin í gásaroyggjar varðveitir henda teiknið; tað tekur hann ikki burt.
Fyri eina Bash-fílu við einum fullum proxy-URL fyri hvørja linju:
target='https://api.example/'
while IFS= read -r proxy || [ -n "$proxy" ]; do
proxy=${proxy%$'\r'}
if [ -z "$proxy" ]; then
continue
fi
curl --proxy "$proxy" --max-time 10 --url "$target"
done < ProxyList.txt
Nýt uppførslur sum http://proxy.example:8080; HTTP-proxy-listin veitir almennar adressur, sum kunnu formaterast soleiðis. read tekur nýggja-linju-atskiljaran burt; endingar-víðkanin tekur ein aftastandi CR burt, um hann er til staðar. Treytin viðgerðar eisini eina seinastu ikki-tóma linju uttan nýggja linju.
IFS= forðar fyri, at økir verða býttar meðan read gongur, og -r varðveitir bókstavligar bakstrik. Síðan senda tvífaldar gásaroyggjar tann úrslitandi URL'in sum eitt curl-argument. Forðist at iterera yvir úrtakið frá boðstøðing: orðabýti í shell kann broyta mark regoðanna í fíluni, áðrenn curl sær tey.
Hetta normaltar linjuendingar. Tað rættar ikki eina skeiva lurta-protokoll, eitt manglandi endapunkt ella eina ónágiliga tænastu.