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 पाहण्यापूर्वी फाइलच्या रेकॉर्डच्या सीमा बदलू शकते.

हे ओळींचे शेवट सामान्य करते. हे चुकीचे ऐकण्याचे प्रोटोकॉल, गहाळ एंडपॉइंट किंवा पोहोचू न शकणारी सेवा दुरुस्त करत नाही.

संबंधित लेख