Wget का उपयोग करके फ़ाइलें डाउनलोड करना


15

मैं इस वेबसाइट से फाइलें डाउनलोड करने की कोशिश कर रहा हूं ।

URL है: http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191&format=file

जब मैं इस कमांड का उपयोग करता हूं:

wget http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191&format=file 

मुझे केवल वही मिलता है index.html?acc=GSE48191जो किसी प्रकार का द्विआधारी प्रारूप होता है।

मैं इस HTTP साइट से फाइलें कैसे डाउनलोड कर सकता हूं?

जवाबों:


22

मुझे लगता है कि आपकी ?व्याख्या शेल द्वारा की गई है (vinc17 द्वारा सुधार: अधिक संभावना है, यह वह है &जिसकी व्याख्या की जाती है)।

बस अपने URL के आसपास सरल उद्धरणों के साथ प्रयास करें:

wget 'http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191&format=file'

ध्यान दें कि आप जिस फ़ाइल का अनुरोध कर रहे हैं वह एक .tarफ़ाइल है, लेकिन उपरोक्त कमांड इसे सहेजेगीindex.html?acc=GSE48191&format=file । इसे सही ढंग से नामित करने के लिए, आप इसका नाम बदल सकते हैं .tar:

mv 'index.html?acc=GSE48191&format=file' GSE4819.tar

या आप विकल्प के रूप में नाम दे सकते हैं wget :

wget -O GSE48191.tar 'http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191&format=file'

उपरोक्त कमांड GSE48191.tarसीधे डाउनलोड की गई फ़ाइल को बचाएगा ।


यह डाउनलोड हो जाता है लेकिन यह निर्देशिका भी नहीं है। यदि आप ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE48191 के लिंक को देखते हैं, तो आप देख सकते हैं कि कई .gz फाइलें हैं। मैं अभी भी उन तक नहीं पहुंच सकता हूँ ??
user3138373

मुझे लगता है कि ओपी एक शेल का उपयोग करता है जो कि ?वाइल्डकार्ड के रूप में अनदेखी करता है क्योंकि कुछ भी मेल नहीं खाता है। मुख्य समस्या यह है &: यह उस भाग को चलाएगा जो पृष्ठभूमि में (इस तरह एक अपूर्ण URL के साथ) पूर्ववर्ती है। लेकिन समाधान एक ही है: URL को उद्धृत करने के लिए।
vinc17

आप के लिए धन्यवाद terdon और संपादित करें / सुधार के लिए vinc। @ user3138373: मैं प्रदान की गई लिंक पर आपकी .gz फाइलें नहीं ढूँढ सकता, क्या आप फिर से बता सकते हैं कि आप उन्हें देखने / उपयोग करने के लिए किस URL का उपयोग करते हैं?
कायले जूल

1
@ user3138373 आपके द्वारा डाउनलोड की जाने वाली फ़ाइल एक संग्रह ( .tarफ़ाइल) है जिसमें .gz फाइलें होती हैं। एक बार जब आप इसे डाउनलोड कर लेते हैं, tar xvf GSE4819.tarतो संग्रह का विस्तार करने और फ़ाइलों तक पहुंचने के लिए दौड़ें ।
terdon

3

एक और तरीका जो संभवतः काम कर सकता है वह इस कमांड का उपयोग करके है:

wget -O nameOfTar.tar "http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191&format=file"

-Oआदेश करने के लिए डाउनलोड करने के लिए नाम निर्दिष्ट करेगा।

बेशक, आपकी प्रारंभिक समस्या है क्योंकि शेल द्वारा "&" की व्याख्या की जा रही थी, URL के आसपास दोहरे उद्धरणों के साथ समस्या को हल करता है।


2
-O विकल्प का उपयोग उस फ़ाइल के नाम को निर्दिष्ट करने के लिए किया जाता है जिसमें dowloaded डेटा सहेजा जाता है। डाउनलोड किए गए डेटा पर इसकी कोई घटना नहीं है (हो सकता है कि आपका मतलब क्या हो, लेकिन मुझे यह स्पष्ट नहीं मिला)।
कायले जूल

हाँ क्षमा करें, मैं अपना सुधार
करूंगा

मुझे यकीन नहीं है कि यह क्यों घट गया।
रेकायो

3
मैंने डाउनवोट नहीं किया, लेकिन यह शायद इसलिए है क्योंकि आपका समाधान समस्या को ठीक नहीं करता है: &शेल द्वारा व्याख्या की गई है, और .tarफ़ाइल का डाउनलोड विफल हो जाएगा।
कायले जूल

0

wget -O "name-you-want-to-save-as.format" http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191&format=file

आपको वह फ़ाइल मिलनी चाहिए जिसे आप वर्तमान निर्देशिका में डाउनलोड करना चाहते हैं।


wget: missing URLइसका wgetउत्तर क्या है, क्योंकि आप तर्क को याद कर रहे हैं -O। इसके अलावा, मुझे लगता है कि यह शायद वैसे भी ओपी की समस्या को हल नहीं करता है।
सेलडा

क्योंकि URL में &सम्‍मिलित है, यह उत्तर तब तक काम नहीं करता है जब तक आप URL में ""या ''उसके आसपास नहीं जोड़ते हैं ।
हारून फ्रेंके

0

$ कर्ल-जी से http://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191">here</a>.</p>
</body></html>

इसलिए आपको करने की जरूरत है

wget https://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE48191

Http के बाद "s" पर ध्यान दें। मैंने इसे स्वयं आजमाया और यह ठीक काम किया।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.