W Bashu tablica zachowuje argumenty wielokrotnego wywołania curl:

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

Pojedyncze cudzysłowy chronią gwiazdkę podczas tworzenia tablicy. Są składnią powłoki, więc tablica przechowuje jeden dosłowny znak *. Następnie rozwinięcie tablicy w podwójnych cudzysłowach podaje każdy element jako osobny argument.

Tutaj --noproxy '*' prosi curl o omijanie proxy dla każdego celu. Gdy tylko wybrane cele mają być bezpośrednie, użyj zamiast tego zamierzonej listy hostów.

Skalar zawierający tekst taki jak curl --noproxy '*' nie zachowuje tej samej struktury. Cudzysłowy powstające przy rozwinięciu zmiennej są na tym etapie zwykłymi znakami; Bash nie analizuje ich ponownie automatycznie jako składni cudzysłowów. Funkcja to inne odpowiednie miejsce na stałe opcje, gdy przekazuje swoje argumenty przez "$@".

Powiązane artykuły