लिनक्स wget कमांड संपूर्ण गाइड

अवलोकन

लिनक्स सीएलआई (CLI) परिवेश में वेब स्रोतों से डेटा प्राप्त करने के लिए wget सबसे लोकप्रिय और भरोसेमंद उपयोगिताओं में से एक है। इस ट्यूटोरियल में, हम बुनियादी फ़ाइल फ़ेचिंग से लेकर नाम बदलने, बाधित डाउनलोड को फिर से शुरू करने और बैकग्राउंड निष्पादन जैसे आवश्यक सिस्टम एडमिनिस्ट्रेशन विकल्पों का व्यावहारिक विश्लेषण करेंगे।

wget पैकेज का सत्यापन एवं आरंभिक डाउनलोड प्रक्रिया

सिस्टम में टूल की उपलब्धता सुनिश्चित करने के लिए पहले रिपॉजिटरी इंडेक्स को अपडेट करें और wget का नवीनतम पैकेज कॉन्फ़िगर करें:

sudo apt-get update -qq && sudo apt-get install -y wget

परीक्षण के दौरान फ़ाइलों को व्यवस्थित रखने और मुख्य कार्यक्षेत्र को स्वच्छ बनाए रखने के लिए एक समर्पित डायरेक्टरी बनाएं और उसमें प्रवेश करें:

mkdir -p ~/wget_test && cd ~/wget_test

बिना किसी अतिरिक्त पैरामीटर के wget को निष्पादित करने पर यह निर्दिष्ट यूआरएल से डेटा स्ट्रीम खींचकर मौजूदा पाथ में मूल फ़ाइल नाम के साथ सहेज देता है।
सुविधाजनक नियंत्रण के लिए आमतौर पर निम्नलिखित फ़्लैग्स का उपयोग किया जाता है:

⚙️ [महत्वपूर्ण स्विच और पैरामीटर]

-O : फ़ाइल के लिए आउटपुट नाम अथवा लक्षित पथ मैन्युअल रूप से सेट करें।
-c : नेटवर्क ड्रॉप या रुकावट के बाद अधूरे डाउनलोड को उसी स्थान से आगे बढ़ाएं।
-b : टास्क को बैकग्राउंड डीमन/प्रोसेस में भेजें ताकि टर्मिनल ब्लॉक न हो।
-i : टेक्स्ट फ़ाइल में सूचीबद्ध कई लिंक को क्रमिक रूप से डाउनलोड करें।
--limit-rate : डेटा ट्रांसफर स्पीड को सीमित करके नेटवर्क बैंडविड्थ सुरक्षित रखें।
-q : बिना किसी कंसोल आउटपुट या प्रोग्रेस बार के शांत मोड (Quiet) में निष्पादन करें।
-r : संपूर्ण डायरेक्टरी ट्री या वेबसाइट पेजों को पुनरावर्ती (Recursive) रूप से लाएं।

wget https://proof.ovh.net/files/1Mb.dat

कस्टम फ़ाइल नाम (-O) और लक्षित डायरेक्टरी (-P) का उपयोग

परीक्षण को आगे बढ़ाने के लिए पहले से तैयार किए गए कार्यशील डायरेक्टरी (~/wget_test) में स्विच करें:

cd ~/wget_test

स्रोत सर्वर का नाम बदलने और अपनी पसंद के नाम custom_sample.dat से फ़ाइल को स्थानीय डिस्क पर लिखने के लिए -O विकल्प का प्रयोग करें:

wget -O custom_sample.dat https://proof.ovh.net/files/1Mb.dat

डाउनलोड किए गए डेटा को अलग से व्यवस्थित रखने के लिए एक नई सब-डायरेक्टरी (~/wget_test/downloads) तैयार करें:

mkdir -p ~/wget_test/downloads

वर्तमान डायरेक्टरी बदले बिना फ़ाइल को सीधे निर्दिष्ट फ़ोल्डर (~/wget_test/downloads) में सुरक्षित करने के लिए प्रीफिक्स पाथ विकल्प -P पास करें:

wget -P ~/wget_test/downloads https://proof.ovh.net/files/1Mb.dat

लक्षित पाथ और कस्टम नामों की पुष्टि हेतु फ़ाइल सूची और उनके सटीक आकारों को ls -lh से जांचें:

ls -lh ~/wget_test ~/wget_test/downloads

बाधित डाउनलोड को पुनर्प्राप्त करना (-c) और बड़ी फ़ाइलों का प्रबंधन

डाउनलोड को फिर से शुरू (Resume) करने की कार्यक्षमता का परीक्षण करने के लिए कार्यशील डायरेक्टरी (~/wget_test) में जाएं:

cd ~/wget_test

अचानक नेटवर्क टूटने जैसी स्थिति का अनुकरण करने के लिए timeout की सहायता से प्रक्रिया को 2 सेकंड बाद बीच में ही समाप्त करते हैं, जिससे केवल आंशिक फ़ाइल ही प्राप्त हो पाती है:

timeout 2s wget https://proof.ovh.net/files/10Mb.dat || true

अधूरी बची 10Mb.dat फ़ाइल की वर्तमान स्थिति और आकार की जांच ls -lh चलाकर करें; यहां देखा जा सकता है कि फ़ाइल अपने पूरे 10MB आकार तक नहीं पहुंच सकी है:

ls -lh 10Mb.dat

शून्य से दोबारा शुरू करने के बजाय, -c (कंटिन्यू) फ़्लैग का उपयोग करके उसी बिंदु से बाइट्स डाउनलोड करना जारी रखें जहाँ प्रक्रिया रुकी थी। भारी फ़ाइलों के ट्रांसफर के दौरान यह सुविधा बैंडविड्थ और समय दोनों की भारी बचत करती है:

wget -c https://proof.ovh.net/files/10Mb.dat

बैंडविड्थ सीमा निर्धारण (–limit-rate) और बैकग्राउंड प्रोसेस (-b)

अंतिम चरण के परीक्षण के लिए अपने समर्पित कार्यक्षेत्र (~/wget_test) में वापस आएं:

cd ~/wget_test

स्थानीय नेटवर्क कनेक्शन पर अत्यधिक दबाव से बचने और अन्य महत्वपूर्ण सेवाओं की गति बनाए रखने के लिए ट्रांसफर दर को 200 KB/s (200k) तक सीमित करें:

wget –limit-rate=200k https://proof.ovh.net/files/1Mb.dat

विशाल डेटासेट को डाउनलोड करते समय शेल सत्र बंद होने पर भी प्रक्रिया बाधित न हो, इसके लिए -b फ़्लैग जोड़कर कार्य को बैकग्राउंड प्रोसेस में भेजें; इसका सारा विवरण wget-log में दर्ज होता रहेगा:

wget -b https://proof.ovh.net/files/10Mb.dat

बैकग्राउंड वर्कर के आरंभ होने और लॉग फ़ाइल बनने के लिए sleep 1 के साथ एक क्षण का ठहराव दें:

sleep 1

सक्रिय बैकग्राउंड कार्य की प्रगति, सर्वर हैंडशेक और स्थानांतरण स्थिति की पुष्टि के लिए tail -n 10 wget-log चलाकर हालिया लॉग प्रविष्टियों का विश्लेषण करें:

tail -n 10 wget-log

इस गाइड में हमने लिनक्स सर्वर पर wget टूल के व्यावहारिक उपयोग से लेकर एडवांस्ड बैकग्राउंड टास्क और रेज्यूमे हैंडलिंग तक के प्रमुख विकल्पों को देखा। इन पैरामीटर्स का आवश्यकतानुसार प्रयोग करके आप अपने ऑटोमेशन स्क्रिप्ट्स और दैनिक टर्मिनल संचालन को अधिक मजबूत और कुशल बना सकते हैं।