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

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

Ответить
Настройки темы
Любой язык - [решено] Редактирование текста названия

Аватара для shao

Ветеран


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

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


Есть ли возможность с помощью скрипта реализовать такую задачу :

Есть группа файлов, много.Файлов много, руками долго и нудно...
Необходимо редактирование названия фалов, путём удаления части текста из названия.
Эта часть текста у всех файлов одинаковая.
Например:

Код: Выделить весь код
luna_msstyles_BLUE_USERTILEBACKGROUND_BMP.bmp

luna_msstyles_BLUE_TREEEXPANDCOLLAPSE_BMP.bmp
Нужно удалить у группы файлов выделенную часть текста. выделенное курсивом - оставить.
И так во всех файлах.
Подскажите пожалуйста как сделать.

З.Ы. Если возможно - желательно пакетным файлом (bat/cmd)

Отправлено: 09:45, 01-07-2010

 

Пользователь


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

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


shao,

оба кода и *.vbs и *.bat работают (проверено на WinVista OS) независимо от разделителей и оба можно переделать под вызов из cmd, чтобы каждый раз не редактировать код

Код: Выделить весь код
Option Explicit 
Dim objFSO, objFile
Dim strPath2SourceFolder, strSourceName, strSourceEnd
Dim intPrefix, intpostfix, strobjFileName, strobjFileExtension
Dim intErrLevel

strPath2SourceFolder   = "F:\2\part_name\dir_0014"
strSourceName="luna_msstyles_BLUE_"
strSourceEnd="_BMP"
intPrefix   = Len(strSourceName)
intpostfix  = Len(strSourceEnd)  
intErrLevel = 0

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")      
If objFSO.FolderExists(strPath2SourceFolder) Then        
For Each objFile In objFSO.GetFolder(strPath2SourceFolder).Files
If UCase(Left(objFile.Name, intPrefix)) = UCase(strSourceName) Then
strobjFileName = Replace(objFSO.GetBaseName(objfile.Name), strSourceName, "",1)
strobjFileName = Replace(strobjFileName, strSourceEnd, "",1)
strobjFileExtension = Mid(objFSO.GetExtensionName(objFile.Name),1)

objFile.COPY strPath2SourceFolder & "\" & strobjFileName & "." & strobjFileExtension
objFile.Delete         
End If          
Next
Else
WScript.Echo "Source folder [" & strPath2SourceFolder & "] is not exists."     
intErrLevel = 1
End If 
Set objFSO = Nothing 
WScript.Quit intErrLevel
shao ты просил пояснения...

код El Sanchez - отличный код, очень лаконичный, но не сработает если в названиях папок пути будут присутствовать "delims", поэтому маленький upgrade:

For %%A In ("%Source%") Do (
For /F "Tokens=2" %%B In ("%%~nA") Do (
Ren "%%A" %%B.%%~xA))

справка в cmd - for /?

подсказка...
http://www.windowsfaq.ru/content/category/3/19/57/
http://forum.oszone.net/post-1444713-12.html
http://www.script-coding.info/WSH.html

Последний раз редактировалось deepred, 03-07-2010 в 12:36.

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

Отправлено: 12:20, 03-07-2010 | #11



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

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


Аватара для El Sanchez

Ветеран


Contributor


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

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



deepred,

Цитата deepred:
For %%A In ("%Source%") Do (
For /F "Tokens=2" %%B In ("%%~nA") Do (
Ren "%%A" %%B.%%~xA)) »
Согласен. Так будет правильней.

Upd: точней Ren "%%A" %%B%%~xA (без точки)

Последний раз редактировалось El Sanchez, 08-07-2010 в 15:00.

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

Отправлено: 12:50, 03-07-2010 | #12



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Почта - Редактирование простого текста Сергей_на_зоне Программное обеспечение Windows 6 08-04-2010 12:58
Названия инструментов, ПО.. M1sha Хочу все знать 2 25-08-2009 21:43
[решено] Редактирование статического текста во Flash Spartaker Вебмастеру 2 10-09-2008 03:32
Муз. файлы и их названия united Хочу все знать 1 14-04-2007 13:52
Сохранение названия CD в Windows garober Microsoft Windows 95/98/Me (архив) 4 11-01-2005 10:14




 
Переход