Jeśli spróbuję przekazać adres URL do zwijania się, który zawiera nawiasy, błąd kończy się niepowodzeniem:
$ curl 'http://www.google.com/?TEST[]=1'
curl: (3) [globbing] illegal character in range specification at pos 29
Jeśli jednak uniknę obu nawiasów, wydaje się, że działa:
$ curl 'http://www.google.com/?TEST\[\]=1'
Co ciekawe, używam ukośnika odwrotnego, aby uciec tylko do pierwszego nawiasu klamrowego po cichu z kodem błędu 20497:
$ curl 'http://www.google.com/?TEST\[]=1'
$ echo $!
20497
Moje pytanie brzmi: jak to naprawić w ogólnych przypadkach? Czy istnieje argument, który automatycznie ucieka z adresów URL, lub opis znaków, które należy uciec przed przejściem do zwijania?
curl -L -o <local_file_name> -g <url>
Globbing używa nawiasów, stąd potrzeba ucieczki przed nimi ukośnikiem
\
. Alternatywnie następujący przełącznik wiersza polecenia wyłączy globbing:--globoff
(lub wersja short-opcja:-g
)Dawny:
źródło