wget उपयोगिता इंटरनेट से फ़ाइलें डाउनलोड करने के लिए सबसे अच्छा विकल्प है। wget बहुत जटिल डाउनलोड स्थितियों को संभाल सकता है जिसमें बड़ी फ़ाइल डाउनलोड, पुनरावर्ती डाउनलोड, गैर-इंटरैक्टिव डाउनलोड, एकाधिक फ़ाइल डाउनलोड आदि शामिल हैं।
इस लेख में आइए 15 बहुत बढ़िया wget उदाहरणों का उपयोग करके विभिन्न डाउनलोड परिदृश्यों के लिए wget का उपयोग कैसे करें, इसकी समीक्षा करें।
1. wget के साथ एकल फ़ाइल डाउनलोड करें
निम्न उदाहरण इंटरनेट से एकल फ़ाइल डाउनलोड करता है और वर्तमान निर्देशिका में संग्रहीत करता है।
$ wget https://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
डाउनलोड करते समय यह निम्न जानकारी के साथ एक प्रगति बार दिखाएगा:
- डाउनलोड पूर्णता का % (उदाहरण के लिए नीचे दिखाए अनुसार 31%)
- अब तक डाउनलोड किए गए बाइट्स की कुल मात्रा (उदाहरण के लिए नीचे दिखाए अनुसार 1,213,592 बाइट्स)
- वर्तमान डाउनलोड गति (उदाहरण के लिए नीचे दिखाए अनुसार 68.2K/s)
- डाउनलोड करने के लिए शेष समय (उदाहरण के लिए नीचे दिखाए अनुसार eta 34 सेकंड)
डाउनलोड प्रगति पर:
$ wget https://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 Saving to: `strx25-0.9.2.1.tar.bz2.1' 31% [=================> 1,213,592 68.2K/s eta 34s
डाउनलोड पूर्ण:
$ wget https://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 Saving to: `strx25-0.9.2.1.tar.bz2' 100%[======================>] 3,852,374 76.8K/s in 55s 2009-09-25 11:15:30 (68.7 KB/s) - `strx25-0.9.2.1.tar.bz2' saved [3852374/3852374]
2. wget -O का उपयोग करके अलग फ़ाइल नाम से डाउनलोड और स्टोर करें
डिफ़ॉल्ट रूप से wget अंतिम फॉरवर्ड स्लैश के बाद अंतिम शब्द से फ़ाइल नाम चुनेगा, जो हमेशा उपयुक्त नहीं हो सकता।
गलत: निम्न उदाहरण फ़ाइल को नाम से डाउनलोड और स्टोर करेगा: download_script.php?src_id=7701
$ wget https://www.vim.org/scripts/download_script.php?src_id=7701
भले ही डाउनलोड की गई फ़ाइल ज़िप प्रारूप में है, यह नीचे दिखाए अनुसार फ़ाइल में स्टोर हो जाएगी।
$ ls download_script.php?src_id=7701
सही: इस मुद्दे को सही करने के लिए, हम -O विकल्प का उपयोग करके आउटपुट फ़ाइल नाम निर्दिष्ट कर सकते हैं:
$ wget -O taglist.zip https://www.vim.org/scripts/download_script.php?src_id=7701
3. wget –limit-rate का उपयोग करके डाउनलोड गति / डाउनलोड दर निर्दिष्ट करें
wget निष्पादित करते समय, डिफ़ॉल्ट रूप से यह पूर्ण संभावित बैंडविड्थ पर कब्जा करने का प्रयास करेगा। जब आप उत्पादन सर्वर पर बड़ी फ़ाइलें डाउनलोड कर रहे हों तो यह स्वीकार्य नहीं हो सकता। इसलिए, इससे बचने के लिए हम –limit-rate का उपयोग करके डाउनलोड गति को सीमित कर सकते हैं जैसा कि नीचे दिखाया गया है।
निम्न उदाहरण में, डाउनलोड गति 200k तक सीमित है
$ wget --limit-rate=200k https://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
4. wget -c का उपयोग करके अधूरा डाउनलोड जारी रखें
wget -c विकल्प का उपयोग करके बीच में रुके डाउनलोड को पुनरारंभ करें जैसा कि नीचे दिखाया गया है।
$ wget -c https://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
यह बहुत उपयोगी है जब आपने एक बहुत बड़ी फ़ाइल डाउनलोड शुरू की है जो बीच में बाधित हो गई। पूरे डाउनलोड को फिर से शुरू करने के बजाय, आप विकल्प -c का उपयोग करके जहां से बाधित हुआ था वहां से डाउनलोड शुरू कर सकते हैं
नोट: यदि डाउनलोड बीच में रुक जाता है, जब आप विकल्प -c के बिना डाउनलोड को फिर से शुरू करते हैं, तो wget स्वचालित रूप से फ़ाइल नाम में .1 जोड़ देगा क्योंकि पिछले नाम वाली फ़ाइल पहले से मौजूद है। यदि .1 वाली फ़ाइल पहले से मौजूद है, तो यह फ़ाइल को अंत में .2 के साथ डाउनलोड करेगा।
5. wget -b का उपयोग करके पृष्ठभूमि में डाउनलोड करें
बड़े डाउनलोड के लिए, wget विकल्प -b का उपयोग करके डाउनलोड को पृष्ठभूमि में रखें जैसा कि नीचे दिखाया गया है।
$ wget -b https://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 Continuing in background, pid 1984. Output will be written to `wget-log'.
यह डाउनलोड शुरू करेगा और आपको शेल प्रॉम्प्ट वापस दे देगा। आप हमेशा नीचे दिखाए अनुसार tail -f का उपयोग करके डाउनलोड की स्थिति देख सकते हैं।
$ tail -f wget-log Saving to: `strx25-0.9.2.1.tar.bz2.4' 0K .......... .......... .......... .......... .......... 1% 65.5K 57s 50K .......... .......... .......... .......... .......... 2% 85.9K 49s 100K .......... .......... .......... .......... .......... 3% 83.3K 47s 150K .......... .......... .......... .......... .......... 5% 86.6K 45s 200K .......... .......... .......... .......... .......... 6% 33.9K 56s 250K .......... .......... .......... .......... .......... 7% 182M 46s 300K .......... .......... .......... .......... .......... 9% 57.9K 47s
इसके अलावा, tail कमांड का उपयोग करके एकाधिक फ़ाइलों को प्रभावी ढंग से देखने के तरीके पर हमारे पिछले multitail लेख की समीक्षा करना सुनिश्चित करें।
6. wget –user-agent का उपयोग करके उपयोगकर्ता एजेंट मास्क करें और wget को ब्राउज़र की तरह प्रदर्शित करें
कुछ वेबसाइटें आपको अपने पेज डाउनलोड करने से रोक सकती हैं क्योंकि वे पहचानते हैं कि उपयोगकर्ता एजेंट ब्राउज़र नहीं है। इसलिए आप –user-agent विकल्प का उपयोग करके उपयोगकर्ता एजेंट को मास्क कर सकते हैं और wget को ब्राउज़र की तरह दिखा सकते हैं जैसा कि नीचे दिखाया गया है।
$ wget --user-agent="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092416 Firefox/3.0.3" URL-TO-DOWNLOAD
7. wget –spider का उपयोग करके डाउनलोड URL टेस्ट करें
जब आप शेड्यूल्ड डाउनलोड करने जा रहे हों, तो आपको जांचना चाहिए कि शेड्यूल्ड समय पर डाउनलोड ठीक होगा या नहीं। ऐसा करने के लिए, शेड्यूल से लाइन को बिल्कुल कॉपी करें, और फिर जांचने के लिए –spider विकल्प जोड़ें।
$ wget --spider DOWNLOAD-URL
यदि दिया गया URL सही है, तो यह कहेगा
$ wget --spider download-url Spider mode enabled. Check if remote file exists. HTTP request sent, awaiting response... 200 OK Length: unspecified [text/html] Remote file exists and could contain further links, but recursion is disabled -- not retrieving.
यह सुनिश्चित करता है कि डाउनलोड शेड्यूल्ड समय पर सफल होगा। लेकिन जब आपने गलत URL दिया, तो आपको निम्न त्रुटि मिलेगी।
$ wget --spider download-url Spider mode enabled. Check if remote file exists. HTTP request sent, awaiting response... 404 Not Found Remote file does not exist -- broken link!!!
आप स्पाइडर विकल्प का उपयोग निम्न परिदृश्यों में कर सकते हैं:
- डाउनलोड शेड्यूल करने से पहले जांचें।
- निश्चित अंतराल पर वेबसाइट उपलब्ध है या नहीं इसकी निगरानी।
- अपने बुकमार्क से पेजों की सूची जांचें, और पता लगाएं कि कौन से पेज अभी भी मौजूद हैं।
8. wget –tries का उपयोग करके कुल रीअटेम्प्ट प्रयासों की संख्या बढ़ाएं
यदि इंटरनेट कनेक्शन में समस्या है, और यदि डाउनलोड फ़ाइल बड़ी है तो डाउनलोड में विफलताओं की संभावना है। डिफ़ॉल्ट रूप से wget डाउनलोड को सफल बनाने के लिए 20 बार पुनः प्रयास करता है।
यदि आवश्यक हो, तो नीचे दिखाए अनुसार –tries विकल्प का उपयोग करके पुनः प्रयास प्रयासों को बढ़ाएं।
$ wget --tries=75 DOWNLOAD-URL
9. Wget -i का उपयोग करके एकाधिक फ़ाइलें / URL डाउनलोड करें
सबसे पहले, सभी डाउनलोड फ़ाइलों या URL को एक टेक्स्ट फ़ाइल में संग्रहीत करें:
$ cat > download-file-list.txt URL1 URL2 URL3 URL4
अगला, download-file-list.txt को wget को -i विकल्प का उपयोग करके तर्क के रूप में दें जैसा कि नीचे दिखाया गया है।
$ wget -i download-file-list.txt
10. wget –mirror का उपयोग करके पूरी वेबसाइट डाउनलोड करें
निम्न कमांड लाइन है जिसे आप निष्पादित करना चाहते हैं जब आप पूरी वेबसाइट डाउनलोड करना चाहते हैं और स्थानीय देखने के लिए उपलब्ध कराना चाहते हैं।
$ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
- –mirror : मिररिंग के लिए उपयुक्त विकल्प चालू करें।
- -p : दिए गए HTML पेज को ठीक से प्रदर्शित करने के लिए आवश्यक सभी फ़ाइलें डाउनलोड करें।
- –convert-links : डाउनलोड के बाद, स्थानीय देखने के लिए दस्तावेज़ में लिंक परिवर्तित करें।
- -P ./LOCAL-DIR : सभी फ़ाइलों और निर्देशिकाओं को निर्दिष्ट निर्देशिका में सहेजें।
11. wget –reject का उपयोग करके डाउनलोड करते समय कुछ फ़ाइल प्रकारों को अस्वीकार करें
आपको एक वेबसाइट मिली जो उपयोगी है, लेकिन आप छवियों को डाउनलोड नहीं करना चाहते तो आप निम्न निर्दिष्ट कर सकते हैं।
$ wget --reject=gif WEBSITE-TO-BE-DOWNLOADED
12. wget -o का उपयोग करके stderr के बजाय लॉग फ़ाइल में लॉग संदेश
जब आप लॉग को टर्मिनल के बजाय लॉग फ़ाइल में रीडायरेक्ट करना चाहते हैं।
$ wget -o download.log DOWNLOAD-URL
13. wget -Q का उपयोग करके जब यह एक निश्चित आकार से अधिक हो तो डाउनलोड छोड़ें
जब आप डाउनलोड रोकना चाहते हैं जब यह 5 MB पार कर जाता है तो आप निम्न wget कमांड लाइन का उपयोग कर सकते हैं।
$ wget -Q5m -i FILE-WHICH-HAS-URLS
नोट: यह कोटा तब प्रभावी नहीं होगा जब आप एकल URL डाउनलोड करते हैं। वह कोटा आकार के बावजूद सब कुछ डाउनलोड हो जाएगा जब आप एकल फ़ाइल निर्दिष्ट करते हैं। यह कोटा केवल पुनरावर्ती डाउनलोड के लिए लागू होता है।
14. wget -r -A का उपयोग करके केवल कुछ फ़ाइल प्रकार डाउनलोड करें
आप इसका उपयोग निम्न स्थितियों में कर सकते हैं:
- वेबसाइट से सभी छवियां डाउनलोड करें
- वेबसाइट से सभी वीडियो डाउनलोड करें
- वेबसाइट से सभी PDF फ़ाइलें डाउनलोड करें
$ wget -r -A.pdf https://url-to-webpage-with-pdfs/
15. wget के साथ FTP डाउनलोड
आप wget का उपयोग करके FTP डाउनलोड कर सकते हैं जैसा कि नीचे दिखाया गया है।
Wget का उपयोग करके अनाम FTP डाउनलोड
$ wget ftp-url
उपयोगकर्ता नाम और पासवर्ड प्रमाणीकरण के साथ wget का उपयोग करके FTP डाउनलोड।
$ wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL
यदि आप इस लेख को पसंद करते हैं, तो कृपया इसे delicious या Stumble के साथ बुकमार्क करें।