Odpowiedzi:
Co powiesz na:
RESULT="`wget -qO- http://example.com`"
echo $RESULT
Edycja: Tak, to działa.
O
każe mu gdzieś wyprowadzać, -
każe O
wysyłać go do bieżącego strumienia. I q
mówi wget, aby nie zawierał żadnej z informacji „Łączenie z xxx ...”.
-q
jest cichy przełącznik i -O
służy do nadania nazwy plikowi, w którym chcemy zapisać dane wyjściowe. Z tego, co czytałem, możemy napisać wiele przełączników razem, jeśli wszystkie nie wymagają argumentów. To -qO
ma sens, ale co wtedy robi ostatnia kreska?
-O
jest argument. Wskazuje, gdzie zapisać wynik pobierania (w tym przypadku: powrót do bieżącego strumienia).
Preferowanym sposobem byłoby
result=$(wget -qO- http://example.com)
echo "$result"
(mała nazwa zmiennej $()
zamiast ``
i cytowane rozwinięcie zmiennej wynikowej).
W przypadku skryptów powłoki za pomocą bash i / lub POSIX sh można przeczytać http://mywiki.wooledge.org/BashGuide . I jest o wiele więcej przydatnych zasobów na tej wiki oraz na http://wiki.bash-hackers.org/ . Obawiam się, że większość innych zasobów związanych ze skryptami powłoki to śmieci, więc najlepiej trzymać się tych dwóch.
-qO
?