Bash curl списоци со прокси: отстранување на завршниот CR од CRLF-редовите
Читајте URL-а на прокси ред по ред во Bash и отстранете еден завршен CR од CRLF-датотеките пред да ја предадете вредноста на curl.
Ред копиран од CRLF-датотека може да изгледа како proxy.example:8080, додека променливата всушност завршува со знак за враќање на каретката. Ставањето на променливата во наводници го зачувува тој знак; не го отстранува.
За Bash-датотека што содржи еден целосен URL на прокси по ред:
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
Користете записи како http://proxy.example:8080; списокот со HTTP-прокси нуди јавни адреси-кандидати за форматирање на тој начин. read го отстранува разделувачот за нов ред; проширувањето на суфиксот отстранува еден завршен CR ако постои. Условот обработува и последен непразен ред без нов ред.
IFS= спречува делење на полиња за време на read, а -r ги зачувува буквалните обратни коси црти. Потоа двојните наводници го предаваат добиениот URL како еден аргумент на curl. Избегнувајте повторување врз излезот од замена на команди: делењето зборови во школката може да ги промени границите на записите во датотеката пред curl да ги види.
Ова ги нормализира завршетоците на редовите. Не поправа погрешен протокол за слушање, отсутна крајна точка или недостапна услуга.