PDA

Показать полную графическую версию : Удаление части названия каталога


mitcu
19-06-2020, 11:25
Добрый день , есть следующий кейс.
Есть исходный каталог.
Внутри данного каталога есть еще каталоги которые пополняются каждый день со следующей структуре.

Название_2000-01-01
Название_2000-01-02
Название_2000-01-03
Название_2000-01-04
Название_2000-01-05

Название_ГГГГ-ДД-ММ - и т.д (до бесконечности)

Нужно удалить везде "Название_"
а оставить везде ГГГГ-ДД-ММ и привести к следующей структуре

2000-01-01
2000-01-02
2000-01-03
2000-01-04

Fors1k
19-06-2020, 12:00
param(
$path = 'C:\Files\',
$string = 'Название_'
)cls

(gci $path -directory).FullName|
%{ren $_ $_.Replace($string,'')}

greg zakharov
22-06-2020, 17:10
Можно и sed'ом обойтись:
sed "s/.*_\(.*\)/\1/" dirname
В боевых условиях прогоняете сие через цикл и ловите волшебный трип счастье.

megaloman
22-06-2020, 18:03
@Echo Off
Set "BoxIn=Z:\Box_In"
Set "Mask=*_20??-??-??"

FOR /F "usebackq delims=" %%d IN (`2^>nul Dir "%BoxIn%\%Mask%" /B /A:D`) DO Set "Name=%%~d" &Call Ren "%BoxIn%\%%~d" "%%Name:~-10%%"
Exit /B




© OSzone.net 2001-2012