Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2728
Благодарности: 1697

Профиль | Отправить PM | Цитировать


Если в именах файлов возможны русские буквы и батник и текстовый файл с их именами в 866(dos) кодировке
Код: Выделить весь код
@Echo Off
CLS

Set "FName=E:\Delete\file name 866.txt"
Set "From=E:\ddd\Games"
Set "To=E:\ddd\Ку Ку"

Md "%To%" 2>nul

If Not Exist "%From%" (
	Echo Папка "%From%" не существует
	GoTo :Eof
)

If Not Exist "%FName%" (
	Echo Файл "%FName%" не существует
	GoTo :Eof
)

FOR /F "usebackq delims=" %%f IN ("%FName%") DO (
	FOR /F "usebackq delims=" %%i IN (`Dir "%From%\%%f" /s /A-d /B 2^>nul`) DO (
		Echo %%i
		Move /Y "%%i" "%To%\"
	)
)

Pause
Если в именах файлов возможны русские буквы и батник и текстовый файл с их именами в 1251 кодировке
Код: Выделить весь код
@Echo Off
CLS
Chcp 1251 >nul

Set "FName=E:\Delete\file name 1251.txt"
Set "From=E:\ddd\Games"
Set "To=E:\ddd\Ку Ку"

Md "%To%" 2>nul

If Not Exist "%From%" (
	Echo Папка "%From%" не существует
	pause
	GoTo :Eof
)

If Not Exist "%FName%" (
	Echo Файл "%FName%" не существует
	pause
	GoTo :Eof
)

FOR /F "usebackq delims=" %%f IN ("%FName%") DO (
	FOR /F "usebackq delims=" %%i IN (`Dir "%From%\%%f" /s /A-d /B 2^>nul`) DO (
		Echo %%i
		Move /Y "%%i" "%To%\"
	)
)
pause
Подстановочные знаки в именах файлов, например, *.exe, возможны

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 26-11-2015 в 00:07.

Это сообщение посчитали полезным следующие участники:

Отправлено: 23:56, 25-11-2015 | #4