Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] перемещение папки если не содежит файлы определенного расширения (http://forum.oszone.net/showthread.php?t=257892)

neprotiv 04-04-2013 22:03 2125901

перемещение папки если не содежит файлы определенного расширения
 
здраствуйте, нужна ваша помощь в таком деле
качаю по rss в utorrente папки в котороых файлы. если папка скачана не полностью то в ней файлы с расширением *.!ut
мне надо перемещать папки которые полностью скачались (то есть не содержат расширение *.!ut) в другую папку - название которой - это дата создания файлов в папке
например
из D:\incoming\папка которая скачалась в D:\new\2013-04-04\\папка которая скачалась
спасибо

Foreigner 04-04-2013 23:04 2125930

При условии, что папки находятся на одном разделе:

Код:

@echo off

pushd "D:\incoming"

for /f "tokens=*" %%i in (' dir /b /ad ') do if not exist "%%i\*.!ut" call:1 "%%i" %%~ti

popd
goto:eof

:1

for /f "tokens=1-3 delims=." %%i in ("%2") do (

    2>nul md "D:\new\%%k-%%j-%%i"
    move %1 "D:\new\%%k-%%j-%%i"

)


neprotiv 04-04-2013 23:14 2125937

ура!!!
большое спасибо

neprotiv 06-04-2013 03:03 2126654

Цитата:

@echo off

pushd "D:\incoming"

for /f "tokens=*" %%i in (' dir /b /ad ') do if not exist "%%i\*.^!ut" call:1 "%%i" %%~ti

popd
goto:eof

:1

for /f "tokens=1-3 delims=." %%i in ("%2") do (

2>nul md "D:\new\%%k-%%j-%%i"
move %1 "D:\new\%%k-%%j-%%i"

)
заметил баг...по скольку нельзя исользовать символ в ! в батниках то надо ставить знак ^
так работает правильнее
еще раз спасибо

Foreigner 06-04-2013 06:47 2126679

Цитата:

Цитата neprotiv
по скольку нельзя исользовать символ в ! в батниках »

Кто вам такое сказал?!!

neprotiv 06-04-2013 14:51 2126826

я имел ввиду поповоду знака ! в именах

не помню когда и где нашел но нашел альтренативу..там это вспоминается
http://www.cyberforum.ru/cmd-bat/thread629573.html

Iska 06-04-2013 18:23 2126966

neprotiv, проблема проявляется только при использовании отложенного расширения переменных окружения и только в определённом коде.

neprotiv 07-04-2013 16:16 2127489

Iska, тогда понятно
поскольку я исользуую файл setting.ini чтобы менять параметры
во многом я пользуюсь методом тыка и сравнением других батников
вот реальный код который я использую...
Цитата:

@echo off
setlocal enabledelayedexpansion
For /F "eol=; tokens=1* delims==" %%i In (settings.ini) Do Set %%i=%%j

pushd "%INCOMING.INT%"

for /f "tokens=*" %%i in (' dir /b /ad ') do if not exist "%%i\*.^!ut" call:1 "%%i" %%~ti

popd
goto:eof

:1

for /f "tokens=1-3 delims=." %%i in ("%2") do (

2>nul md "%INCOMING.OUT%%%k-%%j-%%i"
move %1 "%INCOMING.OUT%%%k-%%j-%%i"

)
ну а в файле настроек так
Цитата:

INCOMING.INT=D:\rss\
INCOMING.OUT=D:\2013\

vova_kansk 06-10-2013 07:45 2229368

в моем мторенте есть галочка "по окончании закачки перемещать файлы в...."


Время: 17:12.

Время: 17:12.
© OSzone.net 2001-