Windows’a büyük / küçük harf duyarlı URL’ler içeren web sitesinden indirmek için wget kullanma


0

Bu komutla emacs kılavuzlarını indirmek için Gnuwin32 wget'i kullandım (yaklaşık 30 dakika sürer):

wget --mirror --page-requisites --convert-links --no-parent --accept .html,.htm,.css,.js http://www.gnu.org/software/emacs/manual/

indirilen kılavuzlar tek bir sorun dışında iyi görünüyordu, Windows index.html ve Index.html arasında ayrım yapmıyor; Örneğin,

http://www.gnu.org/software/emacs/manual/html_node/elisp/index.html

ve

http://www.gnu.org/software/emacs/manual/html_node/elisp/Index.html

farklı URL’ler ve her ikisine de

current_folder / www.gnu.org / yazılım / emacs / manuel / html_node / elisp / index.html

Bu konuyu çözmenin bir yolu var mı?

Güncelleme:

30 dakika sürmeyen alternatif bir örnek (yalnızca 30 saniye sürer)

wget -P new --mirror --page-requisites --convert-links --no-parent --accept .html,.htm,.css,.js http://www.gnu.org/software/emacs/manual/html_node/ses/index.html

--no-clobber ile

wget -P new-nc --no-clobber -r -l inf --page-requisites --convert-links --no-parent --accept .html,.htm,.css,.js http://www.gnu.org/software/emacs/manual/html_node/ses/index.html

Yanıtlar:


1

Windows'taki Win32 alt sistemi yalnızca adda farklı olan dosyaları ayırt edemiyor. Az önce yazdıklarımın tam anlamını anlamak, Windows'un içindekiler hakkında çok fazla araştırma gerektiriyor.

Kısaca söylemek gerekirse, Windows'taki her program bazı "alt sistemler" altında çalışmaktadır. Bir alt sistem, ortak bir API ve kütüphaneler dizisine sahip olan, çekirdeğin üstünde oturan bir kullanıcı alanı "yığını" dır.

Yalnızca üç alt sistem vardır: POSIX, Win32 ve OS / 2. OS / 2 kullanımdan kaldırıldı ve muhtemelen çalışmıyor. Win32, tüm programların% 99.9999'unun (Gnuwin32 ve Cygwin'in parçaları dahil) çalıştırıldığı programdır. POSIX, Services for UNIX (SFU) altında çalışan şeydir.

Windows 7'yi dosya sistemine göre küçük harfe duyarlı hale nasıl getirirsin? bazı iyi cevaplar ve bazı kötü cevaplar vardır. Kayıt defteri ayarları hakkındaki titizliği yoksay; hepsi bu hogwash. İlgili yorum venimus'un "güncelleme" yorumudur.

Basitçe söylemek gerekirse, Windows'ta Windows Server 2003'te çalıştırmanın tek yolu, isimleri yalnızca farklı olması durumunda farklı olan dosyaları arasında ayırt edebilecek bir programı UNIX için Alt Sistem kullanmaktır. Neyse ki, sizin için, wget bu alt sistem altında çok yaygın bir programdır, bu nedenle SFU'yu (eğer öyle lisanslıysanız) kurabilir ve onunla oynayabilirsiniz. İyi şanslar.


2
VirtualBox'u edinin ve yetenekli bir VM'yi çalıştırın, en iyisi işe yarar. Ortalama bir kişi Server 2003 veya 2008'i çalıştırmıyor, bu yüzden SFU muhtemelen bir seçenek değil.
Fiasco Labs,

Ah, doğru .. Server 2008 Standard'ı bir iş istasyonu işletim sistemi olarak çalıştırmaya çok alışkınım. SUA / SFU lisansının son derece kısıtlayıcı olduğunu unutuyorum. Yalnızca Sunucu İşletim Sistemlerinde veya Windows 7 Enterprise'da alabilirsiniz. D'oh.
allquixotic

Bir VM kullanmak yerine, wget'i Index.html olarak index_1.html olarak yeniden adlandırmanın ve uygun indirilen diğer html dosyalarındaki uygun A etiketlerini değiştirmenin bir yolu var mı?
Jisang Yoo

wget ne yazık ki değil. Var olan dosyaların üzerine yazmayı reddetmesi için --no-clobber bayrağını geçebilirsiniz, ancak HTML'deki etiketleri kesinlikle güncellemez. Bu sadece bir indirici; HTML'yi anlamıyor.
allquixotic
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.