Во Bash, низата ги зачувува аргументите за повторен повик на curl:

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

Единечните наводници ја штитат ѕвездичката додека се создава низата. Тие се shell синтакса, па низата чува еден буквален знак *. Потоа проширувањето на низата во двојни наводници го дава секој елемент како посебен аргумент.

Овде --noproxy '*' го замолува curl да ги заобиколи проксите за секое одредиште. Наместо тоа користете ја саканата листа на домаќини кога само избрани одредишта треба да бидат директни.

Скалар што содржи текст како curl --noproxy '*' не ја зачувува истата структура. Наводниците што се создаваат при проширување на променлива се обични знаци во таа фаза; Bash не ги анализира повторно автоматски како синтакса на наводници. Функцијата е уште едно соодветно место за фиксни опции кога ги пренесува своите аргументи со "$@".

Поврзани статии