' Состоит из двух файлов: CleareTemp.bat и ViewObj.vbs
' Оба файла располагаются на сервере, от которого подключается "темпдиск" (расшареная папка)
' Надо создать в шедулере задачу, которая ежедневно в 00:00 запускает файл CleareTemp.bat.
Файл CleareTemp.bat
###################################### [BEGIN] ######################################
rem Собрал: Орлов В.И.
rem цшдшфьы"нфтвучюкг
rem icq:5279603
rem Clear Temp Disk CleareTemp.
rem = = = = = = = = = = Задание параметров = = = = = = = = = = = = = = = = = = = = = = =
rem "from" - временно созданый файл, который потом перемещается в "to"
set from="d:\readme.html"
rem "tmp2" - расшаренная папка для подключения "темпдиска" юзерам. Т.е. сам "темпдиск".
set tmp2="d:\dfs\temp"
rem "to" - имя файла отчета, который останется после очистки "темпдиска"
set to="d:\dfs\temp\readme.html"
rem "tmparh" - папка для хранения истории файлов, что были на "темпдиске" (НЕ самоочищающаяся)
set tmparh="d:\temp"
rem = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
echo ^<html^> >%from%
echo ^<TITLE^>TempDisk^</TITLE^> >>%from%
echo ^<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=CP866"^> >>%from%
echo ^<body^> >>%from%
echo ^<pre^>^<font style="color:red; font:bold 14px Tahoma;"^>Этот диск предназначен для хранения временных файлов,^</font^>^<br^>для передачи файлов по сети.>>%from%
echo ^<font style="color:red; font:bold 18px Tahoma;"^>В 24:00 каждого дня этот диск очищается.^</font^>^<br^>%date% в %time% было удалено следующее:>>%from%
echo ^<font style="color:darkred;"^>======================================================>>%from%
echo #### Каталоги ####>>%from%
dir /B %tmp2% /A:D>>%from%
cscript /nologo ViewObj.vbs /dir:%tmp2% /type:dir >>%from%
echo #### Файлы ####>>%from%
dir /B %tmp2% /A:-D>>%from%
cscript /nologo ViewObj.vbs /dir:%tmp2% /type:file >>%from%
echo ======================================================^</font^>>>%from%
echo ^</pre^> >>%from%
echo ^</body^> >>%from%
echo ^</html^> >>%from%
move /Y %to% %tmparh%\readme_%date%.html
rmdir %tmp2% /S /Q
mkdir %tmp2%
move /Y %from% %to%
cacls %tmp2% /T /E /G Все:C
###################################### [END] ######################################
Файл ViewObj.vbs. Лежит в том же каталоге, что и файл CleareTemp.bat
###################################### [BEGIN] ######################################
' Собрал: Орлов В.И.
' цшдшфьы"нфтвучюкг
' icq:5279603
' Clear Temp Disk ViewObj.
'
'
'
On Error Resume Next
Wscript.echo cmdexec("dir " & WScript.Arguments.Named("dir"), WScript.Arguments.Named("type"))
function cmdexec(comand, tp)
dim strOut, Arr1, WshExec, OutStream, InStream
Set WSHShell = WScript.CreateObject("WScript.Shell")
Set WshExec = WshShell.Exec("cmd")
Set OutStream = WshExec.StdOut
Set InStream = WshExec.StdIn
InStream.WriteLine comand
InStream.WriteLine "exit"
Arr1 = Split(OutStream.ReadAll, vbNewLine)
if tp = "file" then
cmdexec = "Количество файлов:<b>" & left(trim(Arr1(ubound(Arr1)-4)),InStr(trim(Arr1(ubound(Arr1)-4))," ")) & "</b>"
end if
if tp = "dir" then
cmdexec = "Количество каталогов:<b>" & CInt(left(trim(Arr1(ubound(Arr1)-3)),InStr(trim(Arr1(ubound(Arr1)-3))," ")))-2 & "</b>"
end if
Set WshExec = Nothing
Set OutStream = Nothing
Set InStream = Nothing
Set WSHShell = Nothing
end function
###################################### [END] ######################################
Подключение сетевых дисков пользователей на основе присутствия в группах ActiveDirectory.