Ottieni l'output di wget su una variabile


14

Come posso farlo? Lo sto provando in questo modo RISULTATO = `wget $ URL`

PS - Qualche fonte consigliata per l'apprendimento dello scripting della shell?

Risposte:


22

Che ne dite di:

RESULT="`wget -qO- http://example.com`"
echo $RESULT

Modifica: Sì, funziona.


2
Perché un altro trattino dopo -qO?
Ashfame,

2
Ogli dice di emettere da qualche parte, -dice Odi emetterlo allo stream corrente. E qdice a wget di non includere nessuna delle sue informazioni "Connessione a xxx ...".
Oli

Quello che volevo dire era che quando -qè l'interruttore silenzioso e -Oviene utilizzato per dare il nome al file dove vogliamo salvare l'output. Da quello che ho letto, possiamo scrivere più switch insieme se tutti non richiedono argomenti. Quindi -qOha senso, ma allora cosa fa l'ultimo trattino?
Ashfame,

1
È -Oargomento. Indica dove scrivere l'output del download (in questo caso: tornare allo stream corrente).
Oli

24

Il modo preferito sarebbe

result=$(wget -qO- http://example.com)
echo "$result"

(nome della variabile minuscola, $() anziché ``espansione quotata della variabile risultante).

Per gli script di shell con bash e / o POSIX sh, http://mywiki.wooledge.org/BashGuide è la guida da leggere. E ci sono molte altre risorse utili su quel wiki e su http://wiki.bash-hackers.org/ . Temo che la maggior parte delle altre risorse sugli script di shell siano spazzatura, quindi è meglio attenersi a questi due.


Grazie per il tuo contributo! Puoi spiegarlo un po 'cosa c'è che non va nelle citazioni qui?
Ashfame,

@Ashfame Questo spiega il motivo principale per cui dovresti sempre citare espansioni: mywiki.wooledge.org/Arguments
geirha

Grazie! Ho aggiunto le risorse ai segnalibri. Imparerò da lì. :)
Ashfame,

Perché la maggior parte delle altre risorse sulla spazzatura degli script di shell?
Big McLargeHuge,

@Koveras come devo sapere? Le persone probabilmente leggono la guida dell'ABS e poi decidono che condivideranno la loro nuova conoscenza con il mondo con l'ennesimo tutorial scadente.
geirha,

0

in WGET (per WINDOWS BATCH), c'è così:

OtherApplication -arg1 -arg2 > temp.txt
set /p MyVariable=<temp.txt
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.