|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Массовое переименование файлов со счётчиком. |
|
VBS/WSH/JS - Массовое переименование файлов со счётчиком.
|
Пользователь Сообщения: 105 |
Есть большое количество текстовых файлов в папке.
Как лучше и быстрее переименовать такое кол-во файлов средствами .vbs Можно и .bat, но первое вроде бы быстрее работает. Чтобы новые имена были от 1 и выше,в формате с одной цифрой.(т.е. не 01,или 001, а 1). |
|
Отправлено: 16:28, 24-10-2020 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать megaloman, а, ну да — можно сразу туда.
Цитата megaloman:
В самой библиотеке ошибка в описании, что данное свойство только для чтения: Цитата:
|
||
Отправлено: 21:24, 25-10-2020 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 2733
|
Профиль | Отправить PM | Цитировать Iska, Вы правы, почему-то ранее я об это спотыкался, пробовал и у меня не получалось.
vbs c переименованием
MyDir = "Z:\Soft_In" Ext = "txt" MyMask = "^.*\." + Ext + "$" Set Reg = CreateObject("VBScript.RegExp") Reg.IgnoreCase = True Reg.Pattern = MyMask With CreateObject("Scripting.FileSystemObject") Set Files = .GetFolder(MyDir).Files For Each File In Files Filename = File.Name If Reg.Test(Filename) Then File.Name = Filename + ".~~~tmp~~~" End If Next Reg.Pattern = "^.*\.~~~tmp~~~$" N = 0 For Each File In Files Filename = File.Name If Reg.Test(Filename) Then N = N + 1 File.Name = CStr(N) + "." + Ext End If Next End With MsgBox "Done" |
------- Отправлено: 22:11, 25-10-2020 | #12 |
Забанен Сообщения: 793
|
$g = Get-ChildItem X:\path\*.txt | Group-Object {!($_.Basename -as [UInt32])} [Linq.Enumerable]::Zip([String[]]($g[1].Group.FullName), [UInt32[]]( (1..$g.Group.Length).Where{$g[0].Group.Basename -notcontains $_} ), [Func[String, UInt32, ScriptBlock]]{ Rename-Item $($args[0])" "$($args[1]).txt" }) |
Отправлено: 22:22, 25-10-2020 | #13 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Массовое перемещение файлов из списка files.txt | ANIMka | Хочу все знать | 7 | 19-12-2018 05:13 | |
CMD/BAT - [решено] Массовое переименование, отнимая слова от текущего имени | ArchyA | Скриптовые языки администрирования Windows | 8 | 19-07-2018 18:59 | |
CMD/BAT - Переименование файлов | Verilog | Скриптовые языки администрирования Windows | 4 | 10-12-2014 14:55 | |
CMD/BAT - Переименование файлов. | gen0m.rsw | Скриптовые языки администрирования Windows | 1 | 15-10-2010 19:15 | |
CMD/BAT - [решено] AD массовое переименование пользователей | toperx | Скриптовые языки администрирования Windows | 9 | 24-07-2009 12:46 |
|