<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; vbs: как полностью очистить каталог?]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8112&amp;type=atom" />
	<updated>2013-03-20T15:04:24Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=8112</id>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=70547#p70547" />
			<content type="html"><![CDATA[<p>пуск - программы - стандартные - служебные - очистка диска</p>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2013-03-20T15:04:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=70547#p70547</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=70446#p70446" />
			<content type="html"><![CDATA[<p>Для JScript:<br /></p><div class="codebox"><pre><code>main_folder=&quot;С:\\temp&quot;;

fso=WScript.CreateObject(&quot;Scripting.FileSystemObject&quot;);
DeleteFiles(main_folder);

function DeleteFiles(sourcepath)
{
  var folder=fso.GetFolder(sourcepath);
  var files=new Enumerator(folder.Files);

  for(; !files.atEnd(); files.moveNext()) {
    var file=files.item();
      try { file.Delete(); }
      catch(e) {}
  }
  var folders=new Enumerator(folder.SubFolders);
  for(; !folders.atEnd(); folders.moveNext()) DeleteFiles(folders.item().Path);
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[DD]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25263</uri>
			</author>
			<updated>2013-03-18T20:47:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=70446#p70446</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=70056#p70056" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>komr пишет:</cite><blockquote><p>эффект точно такой же как у скрипта выше.</p></blockquote></div><p>А у такого:<br /></p><div class="codebox"><pre><code>F = &quot;&lt;путь к каталогу&gt;&quot;
With CreateObject(&quot;Scripting.FileSystemObject&quot;)
  .DeleteFolder F &amp; &quot;\*&quot;, 1
  .DeleteFile F &amp; &quot;\*&quot;, 1
End With</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Flasher]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27593</uri>
			</author>
			<updated>2013-03-08T11:51:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=70056#p70056</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69942#p69942" />
			<content type="html"><![CDATA[<p>Чистка кеша IE (cmd):<br /></p><div class="codebox"><pre><code>start RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8 /min</code></pre></div><p>Поиском можно найти что именно чистить, т.к. есть варианты.<br />Я использую именно так.</p><p>А если целиком, то при каждом входе пользователя запускается батник:</p><div class="codebox"><pre><code>for /f %%i in (&#039;wmic path win32_LocalTime get DayOfWeek&#039;) do set wd=%%i
IF %wd% NEQ 1 exit

DEL /q %systemroot%\*.log
DEL /q %systemroot%\*.tmp
DEL /q %systemroot%\*.bak
DEL /q %systemroot%\*.old



rd /s/q &quot;%USERPROFILE%\Local Settings\Application Data\Google\Chrome\User Data\Default\Cache&quot;
del /q &quot;%userprofile%\Local Settings\Application Data\Google\Chrome\User Data\Default\History*&quot;


start RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8 /min</code></pre></div>]]></content>
			<author>
				<name><![CDATA[bnp322]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26392</uri>
			</author>
			<updated>2013-03-05T09:35:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69942#p69942</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69940#p69940" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Rom5 пишет:</cite><blockquote><p><em>offtop</em> А в связи с чем необходимость в такой чистке возникает? и как Вы ее задумываете запускать?</p></blockquote></div><p>У нас половина АС теперь через браузер работает, кэш надо чистить, иначе некоторые из АС работают с глюками, опытным путём выяснили, что очистка кэша помогает. <br />Ясно, что не самое красивое решение, зато быстрое :-)<br />Запуск через скрипт регистрации пользователя в домене.</p>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-05T06:23:40Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69940#p69940</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69936#p69936" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>komr пишет:</cite><blockquote><p>Прикрутил такую строчку<br /></p><div class="codebox"><pre><code>  pushd &quot;%userprofile%\Local Settings\Temporary Internet Files&quot; &amp;&amp; (rmdir /s /q &quot;%userprofile%\Local Settings\Temporary Internet Files&quot; &amp; popd) 2&gt;nul
</code></pre></div><p>заработало как надо.</p></blockquote></div><p>Если все же пришли к DOS-овой команде &quot;rd /s /q&quot;, то можно было попробовать и ту команду &quot;del&quot;, что я показывал ранее:<br /></p><div class="codebox"><pre><code>
DEL &quot;%userprofile%\Local Settings\Temporary Internet Files\*.*&quot; /s /q /as /ah
</code></pre></div><p>Хотя остающаяся при этом структура папок может Вам уже вовсе и не нужна.</p><br /><p><em>offtop</em> А в связи с чем необходимость в такой чистке возникает? и как Вы ее задумываете запускать?</p>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-03-04T19:53:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69936#p69936</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69931#p69931" />
			<content type="html"><![CDATA[<p>«&amp;&amp;» — выполнить следующую команду только в том случае, если предыдущая команда вернула нулевой код возврата (что обычно говорит о её успешном выполнении).</p><p>«2&gt;nul» — перенаправить вывод stderr (потока ошибок) на фиктивное пустое устройство (обычный результат — подавление вывода на консоль сообщений об ошибках).</p><p>«(…)» — скобки группируют несколько команд в одну группу.</p><p>«&amp;» — символ, позволяющий объединить несколько команд в одной строке.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-03-04T15:41:37Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69931#p69931</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69926#p69926" />
			<content type="html"><![CDATA[<p>Прикрутил такую строчку<br /></p><div class="codebox"><pre><code>  pushd &quot;%userprofile%\Local Settings\Temporary Internet Files&quot; &amp;&amp; (rmdir /s /q &quot;%userprofile%\Local Settings\Temporary Internet Files&quot; &amp; popd) 2&gt;nul
</code></pre></div><p>заработало как надо. Только совсем не понятно, что в этой строке написано :-) Что означают символы &quot;&amp;&amp;&quot;, &quot;2&gt;null&quot; вкупе с вроде бы понятными операторами?</p>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-04T12:02:04Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69926#p69926</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69925#p69925" />
			<content type="html"><![CDATA[<p>Может на выполнение скрипта влияют права пользователя? Они обычные, пользовательские.</p>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-04T10:22:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69925#p69925</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69924#p69924" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Dmitrii пишет:</cite><blockquote><p>Попробуйте такой способ:</p></blockquote></div><p>Попробовал, эффект точно такой же как у скрипта выше. Скрипт выдаёт только имена файлов. А надо чтоб и путь до файла тоже присутствовал.</p>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-04T10:21:12Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69924#p69924</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69922#p69922" />
			<content type="html"><![CDATA[<p>Попробуйте такой способ:<br /></p><div class="codebox"><pre><code>strPath = &quot;C:\Documents and Settings\Admin\Local Settings\Temporary Internet Files&quot;
Set objFS = CreateObject(&quot;Scripting.FileSystemObject&quot;)
If objFS.FolderExists(strPath) Then
    Set objShell = CreateObject(&quot;Shell.Application&quot;)
    Set objFolderItems = objShell.NameSpace(strPath).Items
    objFolderItems.Filter 32 + 64 + 128, &quot;*&quot;
    For Each objItem In objFolderItems
        WScript.Echo objItem.Path
    Next
    Set objFolderItems = Nothing
    Set objShell = Nothing
Else
    WScript.Echo &quot;Путь не найден.&quot;
End If
Set objFS = Nothing
WScript.Quit 0</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Dmitrii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=13351</uri>
			</author>
			<updated>2013-03-04T06:21:38Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69922#p69922</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69919#p69919" />
			<content type="html"><![CDATA[<p>Коллеги, есть варианты решения? Прошу помощи!</p>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-04T04:46:29Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69919#p69919</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69886#p69886" />
			<content type="html"><![CDATA[<p>Ещё такой код попробовал - скрытые каталоги в кэше не удалились, в ручную же удалились легко:</p><div class="codebox"><pre><code>
On Error Resume Next
Set WshShell = WScript.CreateObject(&quot;WScript.Shell&quot;)
Set objFSO = WScript.CreateObject(&quot;Scripting.FileSystemObject&quot;)
Set objFolder = objFSO.GetFolder(&quot;C:\Documents and Settings\Admin\Local Settings\Temporary Internet Files&quot;)
Set colSubfolders = objFolder.Subfolders
For Each objSubfolder in colSubfolders
 errResults = objSubfolder.Delete
Next
Set files_col = objFolder.files
For each file_obj in files_col
 file_obj.delete(true)
Next
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-01T18:45:08Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69886#p69886</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69884#p69884" />
			<content type="html"><![CDATA[<p>Я извиняюсь,<br />мне по дате не надо ничего смотреть, нужно просто удалить всё, что возможно, из произвольного каталога. Код поправил. В случае с папкой временных файлов IE ничего не получается сделать этим кодом, а как решить проблему - не знаю. И хотелось бы решить всё на vbs, а не командами xcopy.</p><div class="codebox"><pre><code>
Sub DeleteFiles(FolderPath)
    On Error Resume Next
    Set objFolderItems = objShellApp.NameSpace(FolderPath).Items()
    For Each objFolderItem In objFolderItems
        If objFolderItem.IsFolder And LCase(Right(objFolderItem.Name, 4)) &lt;&gt; &quot;.zip&quot; Then
            DeleteFiles objFolderItem.Path
        Else
            Set objFile = objFSO.GetFile(objFolderItem.Path)
            DeleteFile objFolderItem.Path
        End If
    Next
End Sub</code></pre></div>]]></content>
			<author>
				<name><![CDATA[komr]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25457</uri>
			</author>
			<updated>2013-03-01T18:24:20Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69884#p69884</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: vbs: как полностью очистить каталог?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69865#p69865" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>komr пишет:</cite><blockquote><p>...<br />Пример целевого каталога:<br />C:\Documents and Settings\&lt;username&gt;\Local Settings\Temporary Internet Files</p><p>Поиском искал, найденный рекурсивный скрипт не видит файлов в скрытых папках.<br />Даже не так, интереснее, некоторые файлы он видит, но возвращает только их имена, без пути, что делает не возможным их удаление.</p></blockquote></div><p>Список файлов, включая скрытые, можете попробовать сделать так:<br /></p><div class="codebox"><pre><code>xcopy c:\docume~1\username\locals~1\tempor~1\*.*  /H /S /L &gt; c:\tempIE.txt</code></pre></div><p>ДОСовая команда <strong>xcopy</strong> с ключиком &quot;/L&quot; ничего не копирует, а только отображает полные пути к файлам.&nbsp; Пути я для наглядности брал &quot;короткие&quot;, но в работе надежнее, конечно, указывать &quot;длинные&quot; (вдруг там еще есть похожий длинный путь).</p><p>А если предварительно выполнить аналогичную команду, но добавив еще и ключ &quot;/D:m-d-y&quot; (в который надо подставить параметры контролируемой даты - как я понял по Вашему скрипту, Вам надо удалять файлы старее, чем дата в переменной &quot;<em>ControlDate</em>&quot;), то в этот список попадут по идее файлы &quot;свежее&quot; указанной даты. И потом этот список можно будет подсунуть второй команде XCOPY в виде списка файлов - исключений.</p><div class="codebox"><pre><code>
::: Для пользователя &quot;roman2&quot;
::: создание списка неудаляемых файлов, например, свежее даты &quot;28.02.2013 00:00&quot;
xcopy c:\docume~1\roman2\locals~1\tempor~1\*.* /H /L /S /D:02-28-2013 &gt; c:\tempIE_ECXLUDE.txt

::: создание списка для удаления
xcopy c:\docume~1\roman2\locals~1\tempor~1\*.* /H /L /S /EXCLUDE:&quot;c:\tempIE_ECXLUDE.txt&quot; &gt; c:\tempIE_for_DEL.txt

::: а просто удалить все файлы без контроля дат, можно попробовать так (не проверял):
rem DEL c:\docume~1\roman2\locals~1\tempor~1\*.* /s /q /as /ah
</code></pre></div><p>И само удаление на основании файла c:\tempIE_for_DEL.txt можно будет выполнить тут же в батнике, разобрав этот файл командой FOR.<br />&quot;Колхоз&quot; конечно <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />, но думаю сработает.</p>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-02-28T21:43:53Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69865#p69865</id>
		</entry>
</feed>
