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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как из имени файла убрать 11 символов

Ответить
Настройки темы
CMD/BAT - [решено] Как из имени файла убрать 11 символов

Новый участник


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

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


Уважаемые Гуру!

Во входящей папке лежат файлы типа ААА_123456_ГГГГММДД.htm, их нужно привести их к виду ААГГММДД.htm Пробую такой батник :

setlocal enabledelayedexpansion
for %%F in (*.htm) do @set file=%%~nxF && ren %%~nxF !file:~0,2!!file:~-6%%~nxF

в ответ получаю - файл с таким именем уже существует или не найден. Ткните носом, в чем косяк? Операционка - XP SP 3

Отправлено: 10:45, 25-04-2012

 

Старожил


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

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


Код: Выделить весь код
@Echo Off
SetLocal EnableDelayedExpansion
For /F "delims=" %%F In ('Dir "files\*.htm" /A-D /B') Do (
	For /F "tokens=1,3 delims=_" %%A In ("%%F") Do (
		Set Prefix=%%A&Set YYYYMMDD=%%B
		Ren "files\%%F" "!Prefix:~,2!!YYYYMMDD:~2!"
	)
)
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:07, 25-04-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Contributor


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

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


Код: Выделить весь код
@echo off
SetLocal EnableDelayedExpansion
for %%F in (*.htm) do Set file=%%~nxF && ren !file! !file:~0,2!!file:~-11!
У меня работает. Может быть, после того, как Вы упростите имя, и в самом деле могут встретиться повторяющиеся имена? Что тогда?

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

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

Отправлено: 21:41, 25-04-2012 | #3


Новый участник


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

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


СПАСИБО за код! Все работает! Тему закрываю.

Отправлено: 06:07, 26-04-2012 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как из имени файла убрать 11 символов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] Ограничение длины имени файла - как бороться? flower Microsoft Windows 7 14 22-07-2021 15:46
CMD/BAT - [решено] Запуск bat-файла от имени админа.Как сделать каталог этого bat-файла текущим?? axmed0207 Скриптовые языки администрирования Windows 1 19-01-2012 06:14
Длина имени входа пользователя более 20 символов L_Leorik Microsoft Windows NT/2000/2003 2 21-12-2009 13:49
Недопустимая длинна имени файла - как переименовать blqs Хочу все знать 4 19-10-2007 08:15
[решено] Как запрепить запуск программы по имени файла AlxCruel Microsoft Windows 2000/XP 10 05-04-2006 08:58




 
Переход