копирование файла в папку с датой
Добрый день. Подскажите пожалуйста, есть файлы с именем pbyyyymmdd (дата не текущая), как можно по дате в имени файла скопировать этот файл в папку с именем yyyy-mm-dd
|
El Sanchez |
16-08-2012 09:55 1971102 |
foma24,
Код:
@Echo Off
SetLocal
Set Source=C:\temp
For %%A In ("%Source%\pb*.*") Do Call :_Proc "%%A"
GoTo :EoF
:_Proc
Set FN=%~n1
If Not "%FN:~9,1%"=="" XCopy /Y %1 "%~dp1%FN:~2,4%-%FN:~6,2%-%FN:~8,2%\"
|
еще вопросов, а если файл вот такого вида KWTFCB_PB1_ROOXXXXXXXX_XXXXYYYYMMDD_XXX.TXT
FN:~9,1 подразумевает 10 символов
а на такой файл выдает Недопустимое число параметров
|
El Sanchez |
16-08-2012 11:04 1971134 |
Цитата:
Цитата foma24
FN:~9,1 подразумевает 10 символов »
|
foma24, это подразумевает, что если в имени файла есть 10 символ, то можно получать из этого имени дату, не боясь, что символов не хватит.
Цитата:
Цитата foma24
а на такой файл выдает Недопустимое число параметров »
|
foma24, а на такой файл маски в for нет. Показывайте, что изменили в скрипте.
|
Глупую ошибку допустил)
Вот скрипт:
Код:
SetLocal
Set Source=C:\111
For %%A In ("%Source%\*.*") Do Call :_Proc "%%A"
GoTo :EoF
:_Proc
Set FN=%~n1
If Not "%FN:~9,1%"=="" XCopy /Y %1 "C:\222\%FN:~2,4%-%FN:~6,2%-%FN:~8,2%\"
pause
вопрос такой, если у меня в одну папку кидаются и pbyyyymmdd и KWTFCB_PB1_ROOXXXXXXXX_XXXXYYYYMMDD_XXX.TXT как сделать так чтобы и то и то копировалось в папку C:\222\%FN:~2,4%-%FN:~6,2%-%FN:~8,2%\
kwt ведь создает свою папку TFCB-_P-1_ из за указания номеров символов в коде
|
El Sanchez |
16-08-2012 12:23 1971177 |
Цитата:
Цитата foma24
вопрос такой, если у меня в одну папку кидаются и pbyyyymmdd и KWTFCB_PB1_ROOXXXXXXXX_XXXXYYYYMMDD_XXX.TXT как сделать так чтобы и то и то копировалось в папку C:\222\%FN:~2,4%-%FN:~6,2%-%FN:~8,2%\ »
|
foma24,
Код:
@Echo Off
SetLocal
Set Source=C:\111
For %%A In ("%Source%\pb*.*" "%Source%\KWTFCB*.*") Do Call :_Proc "%%A"
GoTo :EoF
:_Proc
Set FN=%~n1
Echo:%FN%|FindStr /i ^^pb&&If Not "%%FN:~9,1%%"=="" XCopy /Y %1 "C:\222\%FN:~2,4%-%FN:~6,2%-%FN:~8,2%\"
Echo:%FN%|FindStr /i ^^KWTFCB&&If Not "%%FN:~34,1%%"=="" XCopy /Y %1 "C:\222\%FN:~27,4%-%FN:~31,2%-%FN:~33,2%\"
|
Время: 20:03.
© OSzone.net 2001-