ดาวน์โหลดโดยใช้ wget ไปยังไดเรกทอรีอื่นที่ไม่ใช่ไดเรกทอรีปัจจุบัน


91

ฉันต้องใช้wgetเพื่อดาวน์โหลดไฟล์ไปยังไดเรกทอรี/var/cache/foobar/(เช่นถ้าฉันดาวน์โหลดstackexchange-site-list.txtมันจะถูกดาวน์โหลดไปที่/var/cache/foobar/stackexchange-site-list.txt)

เป็นไปได้ไหม curlจะเป็นตัวเลือกด้วย แต่ฉันไม่ต้องการใช้curlเนื่องจากไม่ได้ติดตั้งตามค่าเริ่มต้น


6
FYI ข้อมูลนี้มีอยู่ในman wget
user606723

4
@ user606723 คุณช่วยอธิบายได้ไหมว่าเหตุใดจึงเกิด downvotes มันเป็นคำถามที่ถูกกฎหมาย
jrg

3
ก็ฉันเดาว่ามันได้รับการโหวตลงเพราะนี่เป็นคำถามพื้นฐานมากและจะได้รับการแก้ไขโดยการจัดเรียงของ googling man getหรือกำลังมองหาในการใด เป้าหมายของ stackexchange ไม่ใช่เพื่อตอบทุกคำถามที่เป็นไปได้
user606723

1
SO Q & A นี้อธิบายว่าคุณสามารถทำได้โดยใช้-Pสวิตช์เดียวกันกับ A ด้านล่าง จากหน้าคู่มือ: วิธีการระบุตำแหน่งด้วย wget? .
slm

4
นี่เป็นเพียงคำถามพื้นฐานสำหรับผู้ที่รู้คำตอบแล้ว สำหรับทุกคนที่ไม่ทำมันไม่ได้เป็นพื้นฐาน การค้นหาหน้าคนนั้นไม่ง่ายอย่างที่คิดเพราะมันค่อนข้างยาวและมีคนที่มีสติไม่กี่คนที่มีชีวิตมีเวลาหรือสิ่งที่จะนั่งอ่านทั้งหมด อาร์กิวเมนต์ที่ดีที่สุดที่คุณสามารถทำได้คือหน้าคนอาจถูกกรองด้วยgrepหรือบางสิ่งบางอย่าง แต่แม้จะไม่น่าจะให้คำตอบเนื่องจากถ้อยคำ
Synetech

คำตอบ:


56

หากคุณรู้ชื่อของไฟล์ล่วงหน้าคุณสามารถใช้-Oตัวเลือกเพื่อบอกตำแหน่งที่จะเขียนไฟล์

wget -O /var/cache/foobar/stackexchange-site-list.txt http://url.to/stackexchange-site-list.txt

15
@jrg: คุณสามารถระบุไดเรกทอรีดาวน์โหลด ดูคำตอบของ ephemient
UNOR

ถูกต้องคือ -0 หรือ -O ฉันเดาว่าสามารถคัดลอกมันแล้วดู
Alexander Mills

ตนminus capital Oว่าจะช่วย
mithunpaul

156
wget -P /var/cache/foobar/ [...]
wget --directory-prefix=/var/cache/foobar/ [...]

1
- ช่วยให้ wget เริ่มสร้างโฟลเดอร์ย่อยขึ้นอยู่กับวิธีที่คุณเลือกตัวเลือกในการดาวน์โหลด
Kendrick

9
-P น่าจะเป็นคำพ้องความหมายสำหรับ - ไดเรกทอรีคำนำหน้า จากคู่มือ: '-P prefix' '--directory-prefix = prefix' ตั้งค่าคำนำหน้าไดเรกทอรีเป็นคำนำหน้า คำนำหน้าไดเรกทอรีเป็นไดเรกทอรีที่ไฟล์และไดเรกทอรีย่อยอื่น ๆ ทั้งหมดจะถูกบันทึกไว้เช่นด้านบนของต้นไม้การดึง ค่าเริ่มต้นคือ '.' (ไดเรกทอรีปัจจุบัน)
วิศวกร Dollery

0
wget -e robots=off -r --no-parent /home/user/Desktop/MIT/ http://abc.tamu.edu/projects/tzivi/repository/revisions/2/raw/tzivi/

วิธีเพิ่ม: โค้ดด้านบนจะอนุญาตให้คุณดาวน์โหลดไฟล์ทั้งหมดจากไดเรกทอรีเป้าหมายไปยังไดเรกทอรีที่คุณเลือกในคำสั่งเดียว

ทำลายคำสั่ง:

พารามิเตอร์ที่wgetใช้เพื่อดาวน์โหลดไดเรกทอรีทั้งหมดพร้อมกันแทนที่จะเป็นไฟล์เดียวในแต่ละครั้ง:

wget -e robots=off -r --no-parent

ปลายทางของไฟล์ที่ดาวน์โหลด

/home/user/Desktop/MIT/

ที่มาของไฟล์ (ไดเรกทอรีออนไลน์)

http://abc.tamu.edu/projects/tzivi/repository/revisions/2/raw/tzivi/
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.