Bash curl popisi proxyja: uklonite završni CR iz CRLF redaka
Čitajte proxy URL-ove red po red u Bashu i uklonite jedan završni CR iz CRLF datoteka prije nego vrijednost predate curlu.
Redak 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 retku:
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; popis HTTP proxyja nudi javne adrese-kandidate koje tako možete oblikovati. read uklanja razdjelnik novog retka; proširenje sufiksa uklanja jedan završni CR ako postoji. Uvjet također obrađuje posljednji neprazan redak bez novog retka.
IFS= sprječava dijeljenje polja tijekom read, a -r čuva doslovne obrnute kose crte. Dvostruki navodnici zatim predaju dobiveni URL kao jedan curl argument. Izbjegavajte ponavljanje 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 redaka. Ne ispravlja pogrešan protokol osluškivanja, nedostajuću završnu točku ni nedostupnu uslugu.