- Объект FileSystemObject метод DeleteFile и GetTempName — Удаление файлов Windows
- Скрипт для удаления старых файлов и папок
- Удаление файлов старше n дней
- Содержание:
- 1. Скрипт удаления файлов старше n-дней
- 2. Создание задания в планировщике задач
- #Скрипт удаления файлов старше n-дней
- #Создание задания в планировщике задач
Объект FileSystemObject метод DeleteFile и GetTempName — Удаление файлов Windows
Любому пользователю операционной системы Windows рано или поздно нужно осуществить удаление ненужных файлов Windows, как правило, это разный мусор, который мы загрузили в мимолетном состоянии эйфории. В большинстве случаев задача решается простым выбором с помощью мышки ненужных файлов и нажатие на кнопку «DEL» на клавиатуре…
Однако, немало важно рассмотреть, как данная задача решается программным путём, а именно, с помощью сервера сценариев Windows Script Host и программирования с помощью скриптовых языков. За работу с файловой системой отвечает объект FileSystemObject, а за удаление ненужных файлов Windows отвечает его метод DeleteFile, кроме него, мы ещё рассмотрим метод GetTempName, который позволит генерировать временное имя файла. Давайте рассмотрим синтаксис данных методов.
DeleteFile ( filespec [,force]) – Методу передаются два параметра, один из них является обязательным, а другой нет:
- filespec – строковое значение, определяет полный путь к файлу Windows, который надо удалить, можно использовать подстановочные знаки, например, символ вопроса («?»), который заменяет любой один символ и звездочку («*»), которая заменяет любое количество символов.
- force – это необязательный параметр, он принимает логическое значение true (можно удалить файлы с атрибутом только для чтения) и false (данное значение идет по умолчанию, говорит о запрете на удаление файлов с атрибутом только для чтения.)
GetTempName () – Как уже было сказано, метод позволяет генерировать случайное имя файла с расширением tmp. Именно его мы будем использовать для создания временных файлов, что бы потом произвести удаление файлов Windows.
Хорошо, теперь давайте приступим к программированию, как всегда, я сначала приведу программный код на языке vbscript, дам пояснения к программному коду, а уже потом приведу пример программного кода но уже на языке jscript.
Обратите внимание, что в этом сценарии на языке vbscript я использовал родную функцию vbscript – CreateObject для создания ссылки на объект, плюс, там, где не нужно обрабатывать возвращаемое значение, я просто прописывал вызов метода. Сам сценарий работает по следующей схеме: сначала происходит создание каталога в текущей папке, далее в нём будет создано девять файлов, у которых будут случайные имена, сгенерированные с помощью метода GetTempName. Далее происходит вывод диалоговых окон, которые информируют пользователя о том, что бы он проверил содержимое текущего каталога и о том, что произойдёт удаление ненужных файлов Windows в созданной папке, а потом будет удалена и сама папка, для удаления каталога мы использовали метод DeleteFolder (более детально, читайте в статье «Объект FileSystemObject метод DeleteFolder»), файловая система Windows.
Хорошо, давайте продолжим программировать, но уже на языке jscript. Программный код выполняет ту же задачу, что и пример выше, разница лишь в том, что тут создаваемая папка будет иметь другое имя.
Как и в предыдущем примере, тут логика работы и суть аналогична – удаление ненужных файлов, только стоит обратить внимание на одну мелкую деталь, в vbscript передача параметров переходит без указания круглых скобок, а для языка jscript всегда нужно для метода указывать круглые скобки, даже если никакие параметры не передаются .
И так, давайте подытожим: в этой статье мы рассмотрели метода DeleteFile и GetTempName объекта FileSystemObject, которые позволяют генерировать случайные имена для файлов, а также удалять ненужные файлы Windows.
Спасибо за внимание. Автор блога Владимир Баталий
Скрипт для удаления старых файлов и папок
Список форумов SYSAdmins.RU -> WINDOWS |
Автор | |||||
---|---|---|---|---|---|
zhuk09 Активный участник Зарегистрирован: 22.06.2009
|
| ||||
Вернуться к началу |
| ||||
Зарегистрируйтесь и реклама исчезнет! | |||||
ipmanyak Windows guru Зарегистрирован: 28.03.2007
|
| ||||
Вернуться к началу |
| ||||
zhuk09 Активный участник Зарегистрирован: 22.06.2009
|
| ||||
Вернуться к началу |
| ||||
Samd Почетный житель Зарегистрирован: 12.02.2005 |
| ||||
Вернуться к началу |
| ||||
Diaz. Активный участник Зарегистрирован: 24.11.2010
|
| ||||
Вернуться к началу |
| ||||
zhuk09 Активный участник Зарегистрирован: 22.06.2009
|
| ||||
Вернуться к началу |
| ||||
Samd Почетный житель Зарегистрирован: 12.02.2005 |
| ||||
Вернуться к началу |
| ||||
zhuk09 Активный участник Зарегистрирован: 22.06.2009 Удаление файлов старше n днейИногда надо сделать удаление файлов старше n дней. Например Backup’ы. Можно делать это вручную, отсортировать их по дате и удалить, а можно воспользоваться скриптом. В данном примере мы рассмотрим скрипт для удаления файлов старше n дней и добавим задание в планировщик Windows Server 2012R2. Содержание:1. Скрипт удаления файлов старше n-дней2. Создание задания в планировщике задач#Скрипт удаления файлов старше n-днейСкрипт на самом деле очень простой, создается в PowerShell и выглядит он следующим образом: Где: Вот так это выглядит в PowerShell:
#Создание задания в планировщике задачВсе хорошо, у нас есть скрипт. Мы можем выполнять его вручную, когда необходимо очистить наши бекапы. Но зачем выполнять это вручную? Мы поручим планировщику запускать наш скрипт и избавимся сами от рутинной работы. Итак, что нам для этого надо? Для начала идем в «Пуск -> панель управления -> Администрирование» и запускаем там «Планировщик заданий«. Выбираем пункт «Создать задачу«: На вкладке «Общие» задаем имя задания, его описание и пользователя, от которого оно будет выполняться. По умолчанию там будет пользователь, под которым вы вошли в данный момент в систему. Далее переходим на вкладку «Триггеры» и создаем расписание, когда мы будем запускать наше задания. У меня настроено в 10:00 каждые 2 дня. Далее идем на вкладку «Действия» и задаем действие, которое будет выполняться. Выбираем «Запуск программы» программу или сценарий и указываем путь до PowerShell: А аргументе указываем путь до нашего скрипта, который мы создали ранее: Нажимаем «Ок» и еще раз «Ок» Все, на этом наше задание создано. Осталось дождаться, когда будет выполнено наше действие по расписанию и проверить, все ли правильно было настроено. |