View previous topic :: View next topic |
Author |
Message |
mrmerak
Joined: 20 Aug 2007 Posts: 441
|
(Separately) Posted: Thu Oct 18, 2018 17:15 Post subject: Папка-шлюз |
|
|
Всем приветы.
Есть папка "А".
В этой папке есть другие папки "АВ".
Нужно чтобы в 00:00 в папке "А" удалялись все файлы (но не папки), а в папках "АВ" удалялось все.
Подозреваю, что тут нужны батник и планировщик... подскажите как быть. Заранее спс. _________________ TC 9.51 | Win10 1903 |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1169 Location: Макеевка
|
(Separately) Posted: Thu Oct 18, 2018 18:26 Post subject: |
|
|
По быстрому на AutoHotkey получился такой скрипт.
Dir - исходная папка, Period - периодичность проверки (1000 = 1 секунде).
Code: | #NoEnv
;#NoTrayIcon
#SingleInstance ignore
#Persistent
Dir := "d:\A"
Period := "1000"
SetTimer, RemFiles, % Period
return
RemFiles:
Loop, Files, %Dir%\*.*, FDR
{
if InStr(FileExist(A_LoopFileLongPath), "D")
{
if ( A_LoopFileDir != Dir )
FileRemoveDir, %A_LoopFileLongPath%, 1
}
else
{
FileSetAttrib, -R, %A_LoopFileLongPath%
FileDelete, %A_LoopFileLongPath%
}
}
return |
_________________ Windows 11 | TC DreamLair eternal pre-α |
|
Back to top |
|
|
mrmerak
Joined: 20 Aug 2007 Posts: 441
|
(Separately) Posted: Fri Oct 19, 2018 09:03 Post subject: |
|
|
mrmerak wrote: | и планировщик... |
это победил уже:
Quote: | Schtasks.exe /Create /RL Highest /TN CleanUP /SC Daily /ST 23:59 /TR "D:\CleanUP.bat" |
_________________ TC 9.51 | Win10 1903 |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1169 Location: Макеевка
|
(Separately) Posted: Fri Oct 19, 2018 14:12 Post subject: |
|
|
mrmerak
Это не AutoIT, а AutoHotkey скрипт.
Для запуска скрипта достаточно одного файла из архива. Я предпочитаю 32-хбитную Unicode-версию AutoHotkeyU32.exe как наиболее универсальную. Можно откомпилировать в отдельный ехе-шник (компилятор тоже в архиве). _________________ Windows 11 | TC DreamLair eternal pre-α |
|
Back to top |
|
|
mrmerak
Joined: 20 Aug 2007 Posts: 441
|
(Separately) Posted: Fri Oct 19, 2018 14:14 Post subject: |
|
|
LonerD
опа! да, недоглядел
спс
вообщем уже и решение на автоите подсказали:
Code: | #include <File.au3>
FileDelete("D:\folder A\*.*") ;удаляем все файлы из folder A
$folders_list=_FileListToArray("D:\folder A", "*", 2) ;получаем список папок, вложенных в folder A
For $i=1 To UBound($folders_list)-1
DirRemove("D:\folder A\" & $folders_list[$i], 1) ;удаляем папки и все внутри них
DirCreate("D:\folder A\" & $folders_list[$i]) ;создаем пустые папки снова
Next
|
_________________ TC 9.51 | Win10 1903 |
|
Back to top |
|
|
|