Eng Zeil, déi aus enger CRLF-Datei kopéiert gouf, kann wéi proxy.example:8080 ausgesinn, während d'Variabel tatsächlech mat engem Carriage Return ophält. D'Variabel an Anführungszeechen ze setzen erhält dëst Zeechen; et hëlt et net ewech.

Fir eng Bash-Datei mat enger kompletter Proxy-URL pro Zeil:

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

Benotzt Entréen wéi http://proxy.example:8080; d'HTTP-Proxylëscht bitt ëffentlech Adresskandidaten, déi een esou formatéiere kann. read hëlt den Zeilenëmbroch-Trenner ewech; d'Suffix-Erweiderung hëlt een hënnescht CR ewech, wann et do ass. D'Bedingung verschafft och eng lescht net-eidel Zeil ouni Zeilenëmbroch.

IFS= verhënnert d'Feldopdeelung wärend read, an -r erhält wuertwiertlech Réckschrägstricher. Duerno ginn duebel Anführungszeechen déi entstane URL als een curl-Argument weider. Vermeit et, iwwer d'Ausgab vun der Kommando-Substitutioun ze iteréieren: d'Wortopdeelung vun der Shell kann d'Rekordgrenzen vun der Datei änneren, ier curl se gesäit.

Dëst normaliséiert d'Zeilenenn. Et reparéiert awer keen falschen Nolauschterprotokoll, keen fehlenden Endpunkt an och kee net erreechbare Service.

Ähnlech Artikelen