En Bash, un array conserva os argumentos dunha invocación de curl reutilizable:

curl_options=(--noproxy '*' --fail --max-time 10)
curl "${curl_options[@]}" 'https://api.example/'

As comiñas simples protexen o asterisco mentres se crea o array. Son sintaxe da shell, así que o array almacena un único carácter * literal. Despois, a expansión do array entre comiñas dobres fornece cada elemento como argumento separado.

Aquí --noproxy '*' pide a curl que evite os proxies para calquera destino. Use no seu lugar a lista de hosts prevista cando só algúns destinos deban ser directos.

Un escalar que conteña texto como curl --noproxy '*' non conserva a mesma estrutura. As comiñas que produce a expansión dunha variable son caracteres ordinarios nesa fase; Bash non as analiza automaticamente de novo como sintaxe de comiñas. Unha función é outro lugar axeitado para as opcións fixas cando reenvía os seus argumentos con "$@".

Artigos relacionados