Bash curl-proxylister: fjern etterfølgjande CR frå CRLF-linjer
Les proxy-URL-ar linje for linje i Bash og fjern éin etterfølgjande CR frå CRLF-filer før verdien blir send til curl.
Ei linje kopiert frå ei CRLF-fil kan sjå ut som proxy.example:8080 medan variabelen faktisk sluttar med ein carriage return. Å setje variabelen i hermeteikn bevarar teiknet; det fjernar det ikkje.
For ei Bash-fil med éin fullstendig proxy-URL per linje:
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
Bruk oppføringar som http://proxy.example:8080; HTTP-proxylista gir offentlege adressekandidatar som kan formaterast slik. read fjernar linjeskiftteiknet; suffiksutvidinga fjernar éin etterfølgjande CR om han finst. Vilkåret handsamar òg ei siste ikkje-tom linje utan linjeskift.
IFS= hindrar feltdeling under read, og -r bevarar bokstavelege omvendte skråstrekar. Deretter sender doble hermeteikn den resulterande URL-en som eitt curl-argument. Unngå å iterere over utdata frå kommandosubstitusjon: orddelinga til skalet kan endre postgrensene i fila før curl ser dei.
Dette normaliserer linjesluttar. Det rettar ikkje ein feil lyttande protokoll, eit manglande endepunkt eller ei utilgjengeleg teneste.