Listat e përfaqësuesit me Bash curl: hiqni CR-në e fundit nga rreshtat CRLF
Lexoni URL-të e përfaqësuesit rresht për rresht në Bash dhe hiqni një CR të fundit nga skedarët CRLF përpara se t'ia kaloni vlerën curl-it.
Një rresht i kopjuar nga një skedar CRLF mund të duket si proxy.example:8080 ndërsa variabla në të vërtetë përfundon me një karakter kthimi karroce. Vendosja e variablës në thonjëza e ruan atë karakter; nuk e heq.
Për një skedar Bash që përmban një URL të plotë të përfaqësuesit për çdo rresht:
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
Përdorni zëra si http://proxy.example:8080; lista e përfaqësuesve HTTP ofron adresa publike kandidate për t'u formatuar kështu. read heq ndarësin e rreshtit të ri; zgjerimi i prapashtesës heq një CR të fundit nëse ekziston. Kushti trajton gjithashtu rreshtin e fundit jo bosh pa rresht të ri.
IFS= parandalon ndarjen e fushave gjatë read, dhe -r ruan vijat e pjerrëta të kundërta fjalë për fjalë. Pastaj thonjëzat e dyfishta e kalojnë URL-në që rezulton si një argument të vetëm curl. Shmangni përsëritjen mbi daljen e zëvendësimit të komandave: ndarja e fjalëve nga shell-i mund të ndryshojë kufijtë e regjistrimeve të skedarit përpara se curl t'i shohë ato.
Kjo normalizon mbarimet e rreshtave. Nuk rregullon një protokoll të gabuar dëgjimi, një pikë fundore që mungon ose një shërbim të paarritshëm.