Saya mencoba menyimpan versi lokal dari clojure docs dengan wget
perintah:
wget --user-agent=firefox --ignore-length -c -km
"http://clojuredocs.org/quickref/Clojure Core"`
tapi terus dapatkan no such file or directory
ketika mencapai beberapa tautan seperti http://clojuredocs.org/clojure_core/clojure.core/rem yang jelas ada karena Anda bisa sampai di sana dengan browser. Saya kira ini masalah dengan caranya wget
sedang membangun / menyatukan jalan. Bagaimana kamu memperbaiki ini? . Saya sudah mencoba opsi lain seperti --user-agent
dan --ignore-length
tapi saya tetap mendapatkan hasil yang sama seperti yang terlihat di bawah ini (Anda harus membuka gambar untuk melihat pesan dengan benar).
Ini tampaknya menjadi masalah dengan mirroring karena perintah:
wget http://clojuredocs.org/clojure_core/clojure.core/rem
bekerja dengan baik.
http://clojuredocs.org/clojure_core
dapatkan disimpan sebagai file bernamaclojure_core
. Itu sebabnya tidak ada folderclojure_core
bisa dibuat. Mungkin Anda bisa mengatasinya-nd
yang tidak membuat hierarki direktori.clojure_core
pertama agar ada file lain yang bernamaclojure_core
akan diubah namanya menjadi clojure_core1 dan seterusnya. Pertanyaannya adalah, mengapa itu dilakukan? Saya sudah mencoba-nd
opsi dan itu hanya menyebabkan masalah lain, misal macet dalam satu lingkaran mencoba mengunduhrobots.txt
Berkali-kali.Jawaban:
Masalah Anda berasal dari perilaku
wget
untuk menyimpan URLhttp://clojuredocs.org/clojure_core
ke file bernama./clojuredocs.org/clojure_core
, tetapi URLhttp://clojuredocs.org/clojure_core/
(perhatikan trailing slash) ke file bernama./clojuredocs.org/clojure_core/index.html
.Setelah itu mengajukan
./clojuredocs.org/clojure_core
dibuat, mengikuti unduhan mis.http://clojuredocs.org/clojure_core/something
ditakdirkan untuk gagal, karenawget
tidak dapat membuat direktori./clojuredocs.org/clojure_core
lagi.Ini dilaporkan sebagai bug # 29647 di GNU Wget Bugtracker .
Dengan disediakan tambalan (yang jelas tidak menjadikan kode sumber resmi) masalah ini hilang dan
wget
terpaksa membuat direktori terlebih dahulu. Jadi, pengunduhan dapat dilanjutkan.Namun,
http://clojuredocs.org/clojure_core
disimpan sebagai./clojuredocs.org/clojure_core.1
, tidak seperti./clojuredocs.org/clojure_core/index.html
.Saya tidak dapat menilai apakah tautan-konverter (
-k
) cukup pintar untuk membuat tautan dalam salinan lokal cermin ini berfungsi ... Saya menghentikan unduhan setelah beberapa menit. (Aku terlalu tidak sabar;)
)sumber