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.

Gerelateerde artikelen