የBash curl ፕሮክሲ ዝርዝሮች፦ ከCRLF መስመሮች የመጨረሻውን CR ያስወግዱ
የፕሮክሲ URLዎችን በBash ውስጥ በመስመር ያንብቡ እና እሴቱን ወደ curl ከመስጠቱ በፊት ከCRLF ፋይሎች አንድ የመጨረሻ CR ያስወግዱ።
ከCRLF ፋይል የተቀዳ መስመር proxy.example:8080 ይመስላል፣ ሆኖም ተለዋዋጩ በትክክል በካሪጅ ሪተርን ይጠናቀቃል። ተለዋዋጩን በጥቅስ መያዝ ያንን ቁምፊ ይጠብቃል፤ አያስወግደውም።
በእያንዳንዱ መስመር አንድ ሙሉ የፕሮክሲ URL የያዘ Bash ፋይል፦
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 ከማየቱ በፊት የፋይሉን የመዝገብ ወሰኖች ሊለውጥ ይችላል።
ይህ የመስመር መጨረሻዎችን ያመዝናል። የተሳሳተ የማዳመጫ ፕሮቶኮል፣ የጎደለ መጨረሻ ነጥብ ወይም የማይደረስበትን አገልግሎት አያስተካክልም።