Скрипт - Renamer файлов и папок

Страницы:  1
Ответить
 

GRINDERWISCH

Стаж: 17 лет 7 месяцев

Сообщений: 828


GRINDERWISCH · 28-Июн-26 11:22 (20 дней назад, ред. 28-Июн-26 11:31)


Помогите написать скрипт ипа .cmd или .bat который
удалит из имен файлов скобки и все что внутри них
поставит перед всеми цифрами от единицы до девяти ноль
удалит запятую и пробел после цифры и вставит вместо этого пробел тире и пробел
Реально?
Код:

@if (@CodeSection == @Batch) @then
@echo off
for %%F in (*.torrent) do cscript //nologo //E:vbscript "%~f0" "%%~fF"
echo.
echo Готово.
pause
goto :EOF
@end
Option Explicit
Dim fso, re, file, name, ext
Set fso = CreateObject("Scripting.FileSystemObject")
Set re = CreateObject("VBScript.RegExp")
Set file = fso.GetFile(WScript.Arguments(0))
name = fso.GetBaseName(file.Name)
ext = fso.GetExtensionName(file.Name)
' Удалить все [ ... ]
re.Global = True
re.Pattern = "\s*\[[^\]]*\]"
name = re.Replace(name, "")
' Убрать лишние пробелы
re.Pattern = "\s+"
name = re.Replace(name, " ")
' Убрать пробелы в начале и конце
name = Trim(name)
' 1, -> 01 -
' 2, -> 02 -
' ...
re.Pattern = "([ -])([1-9]), "
name = re.Replace(name, "$10$2 - ")
file.Name = name & "." & ext
Код которрый мне написал Джипити
не работает!
[Профиль]  [ЛС] 

I_AM_VANKO

Стаж: 2 года 3 месяца

Сообщений: 1


I_AM_VANKO · 03-Июл-26 02:37 (спустя 4 дня)

Скрипт не работает, потому что он ищет квадратные скобки [ ], а в примерах круглые ( ). Кроме того, регулярка для нумерации слишком жесткая. Если ориентироваться на показанные имена файлов, достаточно заменить: re.Pattern = "\s*\[[^\]]*\]" на re.Pattern = "\s*\([^)]*\)" и заменить правило re.Pattern = "([ -])([1-9]), " на re.Pattern = "([1-9]),\s*" name = re.Replace(name, "0$1 - ")
[Профиль]  [ЛС] 

GRINDERWISCH

Стаж: 17 лет 7 месяцев

Сообщений: 828


GRINDERWISCH · 03-Июл-26 10:30 (спустя 7 часов)

I_AM_VANKO
Прошу прощения за наглость - а можно мне готовый код целиком который бы удалял и круглые и квалдратные скобки?и кавычки?
[Профиль]  [ЛС] 
 
Ответить
Loading...
Error