![]() |
wget проблемма русских названий
Всем привет, кто нибудь смог победит у wget-а проблему с русскими названиями у файлов и папок? Пересмотрел все ключи, в инете поискал, но пока без успеха.
|
Пример проблемы приведите.
|
Сам скрипт:
@echo off set uri=http://10.24.119.245/!_Download_Files_ set patth1="C:\Install" for /f "tokens=2 delims=:(" %%i in ('ipconfig /all^|find "IPv4"') do ( for /f "tokens=1-4 delims=. " %%A in ("%%i") do ( IF %%A==10 IF %%B==24 set OTDEL=%%C ) ) if not exist %patth1% mkdir %patth1% wget.exe -c -R index.html* -r -l0 -nH -np -N --cut-dirs=2 %uri%/EVERYONE/ -P %patth1% wget.exe -c -R index.html* -r -l0 -nH -np -N --cut-dirs=2 %uri%/%OTDEL%/ -P %patth1% exit При скачке любого файла или папки с русским именем: Папка, Файл.txt Скачивается с именем: Р%9Fапка, Файл.txt Кодировку пытался менять в самом скрипте через команду chcp, пытался файл под разной кодировкой сохранять, пробовал разные ключи добавлять которые кому то помогали качать нормально. Но пока не смог найти решения |
Q: Не-ASCII символы сохраняются в именах файлов как %D0%A5%D1%83%D0%B9 (или того хуже), хотя локаль юникодная.
A: Укажите ключ --restrict-file-names=nocontrol,unix или --restrict-file-names=nocontrol,windows соответственно. Если у вас Windows и локаль не юникодная — используйте вариант от Alex_Piggy с ключом --local-filesystem-encoding=ENCODING, где ENCODING — имя кодировки локали в терминах iconv. Текущую локаль cmd.exe можно проверить при помощи команды chcp. Для русской кириллицы в Windows обычно используется CP866. источник |
пробовал, ему пофиг
--restrict-file-names=nocontrol,windows данный ключ пофиг в каком месте среди ключей ставить? или его куда то определенно нужно писать? --local-filesystem-encoding=ENCODING, данную команду нужно писать как --local-filesystem-encoding=CP866 или я ошибаюсь? Кстати --local-filesystem-encoding=ENCODING не поддерживается wget, пишет смотри в хелпе список ключей, Хочу уточнить что у меня wget в виде одного exe файла, получается он урезанный по функционалу |
как насчет взять тот вгет, на который я дал ссылку?
|
Сорь не увидел ссылку :(. Скачал Результат тот же.
@echo off set uri=http://10.24.119.245/!_Download_Files_/ set patth1="C:\Install" if not exist %patth1% mkdir %patth1% wget.exe -c -R index.html* -r -l5 -nH -np --local-filesystem-encoding=CP866 %uri% -P %patth1% ::wget.exe -c -E -R html -r -l5 -nH -np %uri% -P %patth1% exit Ведь так нужно по идее ключ указать? Как вариант апачь может быть настроен не так |
|
wget.exe -c -R index.html* -r -l0 -nH -np -N --cut-dirs=2 --restrict-file-names=nocontrol,windows --local-filesystem-encoding=CP866 %uri%/_EVERYONE/ -P %patth1%
сделал так эффекта нет. По видимому где то еще косяк, ладно спасиб буду без русского языка делать |
мне помогло --local-filesystem-encoding=Win1251 (без --restrict-file-names=...) и wget по сслыке из поста alv1r
|
Дайте реальную ссылку для скачивания с файлом в кириллице.
|
Цитата:
|
Время: 20:37. |
Время: 20:37.
© OSzone.net 2001-