Mantieni intatti gli argomenti di curl --noproxy con un array Bash
Archivia le opzioni curl riutilizzabili in un array Bash così l'asterisco letterale arriva a --noproxy senza diventare testo della shell.
In Bash un array conserva gli argomenti per una chiamata curl riutilizzabile:
curl_options=(--noproxy '*' --fail --max-time 10)
curl "${curl_options[@]}" 'https://api.example/'Gli apici singoli proteggono l'asterisco durante la creazione dell'array. Sono sintassi della shell, quindi l'array memorizza un unico carattere * letterale. Poi l'espansione dell'array tra doppi apici fornisce ogni elemento come argomento separato.
Qui --noproxy '*' chiede a curl di aggirare i proxy per ogni destinazione. Usa invece l'elenco di host previsto quando solo destinazioni selezionate devono essere dirette.
Uno scalare che contiene testo come curl --noproxy '*' non conserva la stessa struttura. Gli apici prodotti dall'espansione di una variabile sono caratteri ordinari in quella fase; Bash non li analizza di nuovo automaticamente come sintassi di quoting. Una funzione è un'altra sede adatta per le opzioni fisse quando inoltra i suoi argomenti con "$@".