Bash curl liste proxyja: uklonite završni CR iz CRLF redova
Čitajte proxy URL-ove red po red u Bashu i uklonite jedan završni CR iz CRLF datoteka prije nego vrijednost predate curlu.
Red kopiran iz CRLF datoteke može izgledati kao proxy.example:8080, dok varijabla zapravo završava znakom za povratak kolica. Stavljanje varijable u navodnike čuva taj znak; ne uklanja ga.
Za Bash datoteku koja sadrži jedan potpuni proxy URL po redu:
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
Koristite unose poput http://proxy.example:8080; lista HTTP proxyja nudi javne adrese-kandidate koje tako možete formatirati. read uklanja razdjelnik novog reda; proširenje sufiksa uklanja jedan završni CR ako postoji. Uvjet obrađuje i posljednji neprazan red bez novog reda.
IFS= sprječava dijeljenje polja tijekom read, a -r čuva doslovne obrnute kose crte. Dvostruki navodnici zatim prosljeđuju dobiveni URL kao jedan curl argument. Izbjegavajte iteriranje po izlazu zamjene naredbi: dijeljenje riječi u ljusci može promijeniti granice zapisa datoteke prije nego što ih curl vidi.
Ovo normalizira završetke redova. Ne ispravlja pogrešan protokol osluškivanja, nedostajuću krajnju točku ni nedostupnu uslugu.