Houd curl --noproxy-argumenten intact met een Bash-array
Bewaar herbruikbare curl-opties in een Bash-array zodat de letterlijke asterisk --noproxy bereikt zonder shelltekst te worden.
In Bash bewaart een array de argumenten voor een herbruikbare curl-aanroep:
curl_options=(--noproxy '*' --fail --max-time 10)
curl "${curl_options[@]}" 'https://api.example/'De enkele aanhalingstekens beschermen de asterisk terwijl de array wordt gemaakt. Ze zijn shellsyntaxis, dus de array bewaart één letterlijk *-teken. De array-uitbreiding tussen dubbele aanhalingstekens levert daarna elk element als apart argument.
Hier vraagt --noproxy '*' curl om proxies voor elke bestemming over te slaan. Gebruik in plaats daarvan de bedoelde hostlijst wanneer alleen geselecteerde bestemmingen direct moeten zijn.
Een scalair met tekst zoals curl --noproxy '*' bewaart niet dezelfde structuur. Aanhalingstekens die ontstaan bij het uitbreiden van een variabele zijn in dat stadium gewone tekens; Bash ontleedt ze niet automatisch opnieuw als aanhalingstekensyntaxis. Een functie is een andere geschikte plek voor vaste opties wanneer die zijn argumenten met "$@" doorgeeft.