Değişkene wget çıktısı alma


14

Nasıl yapabilirim? Ben böyle deniyorum RESULT = `wget $ URL`

PS - Ayrıca kabuk komut dosyası öğrenmek için önerilen herhangi bir kaynak?

Yanıtlar:


22

Nasıl olur:

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

Düzenleme: Evet, işe yarıyor.


2
Neden başka bir tire -qO?
Ashfame

2
Obir yere çıktı vermesini -söyler O, mevcut akıma çıktı vermesini söyler . Ve qwget'e "xxx'e bağlanıyor ..." bilgilerini eklememesini söyler.
Oli

Demek istediğim, -qsessiz anahtar ne zaman -Oçıktı çıktı kaydedilmesini istediğiniz yere dosya vermek için kullanılır oldu. Okuduğum kadarıyla, hepsi bağımsız değişken gerektirmiyorsa birlikte birden fazla anahtar yazabiliriz. Öyleyse -qOmantıklı ama son çizgi ne yapıyor?
Ashfame

1
Bu bir -Oargüman. İndirme çıktısının nereye yazılacağını söyler (bu durumda: geçerli akışa geri dön).
Oli

24

Tercih edilen yol

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

( sonuç değişkeninin genişletilmesi $()yerine küçük harf değişkeni adı ``).

Bash ve / veya POSIX sh ile kabuk komut dosyaları için http://mywiki.wooledge.org/BashGuide okunacak kılavuzdur. Ve bu wiki'de ve http://wiki.bash-hackers.org/ adresinde çok daha fazla faydalı kaynak var . Korkarım kabuk komut dosyalarındaki diğer kaynakların çoğu çöptür, bu yüzden bu ikisine sadık kalmak en iyisidir.


Giriş için teşekkürler! Burada alıntılarda neyin yanlış olduğunu biraz açıklayabilir misiniz?
Ashfame

@Ashfame Bu, her zaman açılımları neden alıntılamanızın ana nedenini açıklar: mywiki.wooledge.org/Arguments
geirha

Teşekkürler! Kaynakları işaretledim. Oradan öğreneceğim. :)
Ashfame

Neden kabuk komut dosyası çöpleriyle ilgili diğer kaynakların çoğu?
Büyük McLargeHuge

@Koveras'ı nasıl bilebilirim? İnsanlar muhtemelen ABS kılavuzunu okuduktan sonra yeni öğrendikleri bilgileri başka bir boktan öğretici ile paylaşacaklarına karar verirler.
geirha

0

WGET'te (WINDOWS BATCH için) şöyle:

OtherApplication -arg1 -arg2 > temp.txt
set /p MyVariable=<temp.txt
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.