CRLF faylından kopyalanmış sətir proxy.example:8080 kimi görünə bilər, halbuki dəyişən əslində karrij-retur simvolu ilə bitir. Dəyişəni dırnaq içində saxlamaq həmin simvolu qoruyur; onu silmir.

Hər sətirdə bir tam proksi URL olan Bash faylı üçün:

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 kimi qeydlərdən istifadə edin; HTTP proksi siyahısı bu şəkildə formatlamaq üçün ictimai ünvan namizədləri verir. read yeni sətir ayırıcısını silir; şəkilçi genişlənməsi varsa bir sonuncu CR-ni silir. Şərt həmçinin yeni sətri olmayan sonuncu boş olmayan sətri də emal edir.

IFS= read zamanı sahə bölünməsinin qarşısını alır, -r isə hərfi tərs kəsikləri qoruyur. Sonra ikiqat dırnaqlar yaranan URL-i tək curl arqumenti kimi ötürür. Əmr əvəzləməsinin çıxışı üzərində iterasiyadan çəkinin: shell söz bölünməsi curl onları görməzdən əvvəl faylın qeyd sərhədlərini dəyişə bilər.

Bu, sətir sonlarını normallaşdırır. Səhv dinləmə protokolunu, çatışmayan son nöqtəni və ya əlçatmaz xidməti düzəltmir.

Əlaqəli məqalələr