powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Windows [игнор отключен] [закрыт для гостей] / Автоматизация удаления файлов с помощью пакетного файла
25 сообщений из 28, страница 1 из 2
Автоматизация удаления файлов с помощью пакетного файла
    #34099799
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Возникла такая проблема.
Я полный ноль в написании .bat файлов, но необходимо автоматизировать следующую задачу.
Каждый день создаётся новый архив данных. Срок хранения архива 7 дней. Поэтому необходимо, чтобы каждый день удалялись архивы недельной давности. Как это описать. Посмотрела команду Del, а там ничего такого нет.
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34099809
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наример так:
Код: plaintext
1.
2.
3.
4.
5.
del arch7.zip
ren arch6.zip arch7.zip
ren arch5.zip arch6.zip
.... и т.д.
pkzip -add arch1.zip

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34099972
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зато там есть команда for и if
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34099976
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я бы написал js файл для этого
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34103300
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov
наример так:
Код: plaintext
1.
2.
3.
4.
5.
del arch7.zip
ren arch6.zip arch7.zip
ren arch5.zip arch6.zip
.... и т.д.
pkzip -add arch1.zip
Posted via ActualForum NNTP Server 1.3

Спасибо, идея хорошая. Но как раз проблема в названиях файлов. По регламенту, они обязаны создаваться в след. формате: например, exp_full_06_11_1, т.е. файл создан 1 ноября 2006 года. Сегодня будет создан новый как exp_full_06_11_2. Т.е. необходимо обработать название файлы, а именно его дату и сравнить с системной даты. Вычислить разницу и удалить файл недельной давности. Т.е. это моё представление алгоритма. Может, можно и по-другому как-то? А Java скрипты я писать не умею.
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34103311
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е. exp_full_06_11_1.rar
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34103776
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, можно как-то получить доступ к свойству файла - дата создания, и как-нибудь обрабатывать её?
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34106475
root_sql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KsuhaМожет, можно как-то получить доступ к свойству файла - дата создания, и как-нибудь обрабатывать её?

Можно воспользоваться VBS, задача похожая - удаляеет самые старые файлы из указанного какталога (не смотрит подкаталоги) если размер превышает указанный лимит в байтах, работает с названиями файлов вида dd.mm.yyyy (например 10.10.2006)
создать файл название.vbs и поместить код, который можно переработать и лишнее убрать:

DeleteFielesFromDir "C:\distr\папка1", "\\distr\\папка1", 55000000000, "."

Sub DeleteFielesFromDir(CurrentPatch, CurrentQuery, FolgerSize, LocalOrRemoteComputer)

Const OverwriteExisting = True
Const adVarChar = 200
Const MaxCharacters = 255

Set DataList = CreateObject("ADOR.Recordset")
DataList.Fields.Append "CreateDate", adVarChar, MaxCharacters
DataList.Fields.Append "CurrentPatch", adVarChar, MaxCharacters
DataList.Fields.Append "Sort", adVarChar, MaxCharacters
DataList.Open

Set objFSO = CreateObject("Scripting.FileSystemObject")
strComputer = LocalOrRemoteComputer


Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")


Set colFiles = objWMIService. _
ExecQuery("Select * from CIM_DataFile where Path ='\\"& CurrentQuery &"\\'")

Set objFolder = objFSO.GetFolder(CurrentPatch)

if objFolder.Size > 0 then
For Each objFile in colFiles

if LocalOrRemoteComputer <> "." then
objPath = objFile.Name
objPath = Replace(objPath, "c:\", "\\" & LocalOrRemoteComputer & "\")
Set objFile = objFSO.GetFile(objPath)
else Set objFile = objFSO.GetFile(objFile.Name)
End If

DataList.AddNew
DataList("CreateDate") = objFile.DateCreated
DataList("CurrentPatch") = objFile.Path
Str = objFile.DateCreated

Str = Replace(Str, ":", "")

Str_Split = Split(Str, " ")

Str_Beg = Str_Split(0)
Str_Date = Split(Str_Beg, ".")
Str_Beg = Str_Date(2)&Str_Date(1)&Str_Date(0)

Str_End = Str_Split(1)
if len(Str_Split(1)) = 5 then
Str_End = "0" & Str_End
end if

Str = Str_Beg & Str_End

DataList("Sort") = Str
DataList.Update
Next

DataList.MoveFirst
DataList.Update
DataList.Sort = "Sort"
DataList.MoveFirst
DataList.Update

Do Until DataList.EOF

if objFolder.Size > FolgerSize then
set objFile = objFSO.GetFile(DataList.Fields.Item("CurrentPatch"))
objFSO.DeleteFile(objFile.Path)
end if
DataList.MoveNext
Loop

End If
DataList.Close

End Sub

Ссылка в помощь http://www.microsoft.com/technet/scriptcenter/default.mspx
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34106585
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KsuhaЗдравствуйте!
Возникла такая проблема.
Я полный ноль в написании .bat файлов, но необходимо автоматизировать следующую задачу.
Каждый день создаётся новый архив данных. Срок хранения архива 7 дней. Поэтому необходимо, чтобы каждый день удалялись архивы недельной давности. Как это описать. Посмотрела команду Del, а там ничего такого нет.Хе. Скажу Вам по секрету, что Оракл, помоему Ваш случай, умеет это делать сам (RMAN) и SQL Server тоже (Maintence plan).
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34106599
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В команде Delete можно использовать подстановочные символы "*", т.е. команда будет такая:
Код: plaintext
Del путь\exp_full*.*
Например
Код: plaintext
Del c:\temp\dayfiles\exp_full*.*
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34108404
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
root_sql KsuhaМожет, можно как-то получить доступ к свойству файла - дата создания, и как-нибудь обрабатывать её?

Можно воспользоваться VBS, задача похожая - удаляеет самые старые файлы из указанного какталога (не смотрит подкаталоги) если размер превышает указанный лимит в байтах, работает с названиями файлов вида dd.mm.yyyy (например 10.10.2006)
создать файл название.vbs и поместить код, который можно переработать и лишнее убрать:...



О, Мама Мия! Вы хотите, чтобы меня кондрашка хватила??? Я поняла одно, простого ничего придумать нельзя. Ладно, буду ручками делать. :((
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34108410
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Relic Hunter KsuhaЗдравствуйте!
Возникла такая проблема.
Я полный ноль в написании .bat файлов, но необходимо автоматизировать следующую задачу.
Каждый день создаётся новый архив данных. Срок хранения архива 7 дней. Поэтому необходимо, чтобы каждый день удалялись архивы недельной давности. Как это описать. Посмотрела команду Del, а там ничего такого нет.Хе. Скажу Вам по секрету, что Оракл, помоему Ваш случай, умеет это делать сам (RMAN) и SQL Server тоже (Maintence plan).

Да, это действительно Оракл. А как Вы догадались???
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34108465
Biz©
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KsuhaДа, это действительно Оракл. А как Вы догадались???
а этот архив - не резервная ли копия базы ? ;)
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34109640
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Biz© KsuhaДа, это действительно Оракл. А как Вы догадались???
а этот архив - не резервная ли копия базы ? ;)
ДА, это копия. А что, Вы хотите получить доступ?
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34109972
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я специально для этих целей написал утилитку - расшириненние для команды dir, которая окоромя маски понимает также и даты. Соответсвенно в бат фале можно получить список файлов, дата модификации которых раньше чем семь дней назад. Потом файлы можно удалить согласно списка.
все наши на www.corba.kubsu.ru
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34110367
Biz©
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ksuha Biz© KsuhaДа, это действительно Оракл. А как Вы догадались???
а этот архив - не резервная ли копия базы ? ;)
ДА, это копия. А что, Вы хотите получить доступ?
ну дык пользуйте штатные средства ... вам уже указали на RMAN и его возможности ...
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34116163
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ggg_oldЯ специально для этих целей написал утилитку - расшириненние для команды dir, которая окоромя маски понимает также и даты. Соответсвенно в бат фале можно получить список файлов, дата модификации которых раньше чем семь дней назад. Потом файлы можно удалить согласно списка.
все наши на www.corba.kubsu.ru
Дайте точную ссылку, пожалуйста, пожалуйста.
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34116267
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пример работы с коллекцией files

var fso,f,f1,fc,s;
fso=WScript.CreateObject("Scripting.FileSystemObject");
f=fso.GetFolder("C:\\");
fc=new Enumerator(f.files);
s="";
for(;!fc.atEnd();fc.moveNext())
{ s+=fc.item().":"+fc.item().DateCreated;
s+="\n";
}
WScript.Echo(s);
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34116310
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
var fso,f,f1,fc,s;
fso=WScript.CreateObject("Scripting.FileSystemObject");
f=fso.GetFolder("C:\\");
fc=new Enumerator(f.files);
s="";
for(;!fc.atEnd();fc.moveNext())
{
s+=fc.item()+":"+fc.item().DateCreated;
s+="\n";
}
WScript.Echo(s);
это пример работы с датой в js
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34116454
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
dim n, zapusk
n = WeekDay( date() )  ' номер дня недели
zapusk = "pkzip.exe -a ARXIV" & n & ".zip"
msgbox zapusk
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run zapusk

Этот текст сохрани в файле с расширением VBS
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34123682
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А существует ли какая-либо среда программирования для VBScript? Чтобы я могла набрать команду, нажать F1 и мне бы выдалась бы справка по этой команде или объекту? Чтобы там был Help? А то когда это дело пишешь в текстовом файле, потом компилируешь, и если он выдаёт ошибку, то узнать об этой ошибке что-либо, либо почитать справку нельзя.
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34123698
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не нашел, правда есть отладчик сценариев, но я обычно пишу скрипты на
javaScript в Dreamwer
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34124199
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Green2
я не нашел, правда есть отладчик сценариев, но я обычно пишу скрипты на
javaScript в Dreamwer
--



Posted via ActualForum NNTP Server 1.3
Но должно же быть хоть что-то. А Яву я просто хуже понимаю.
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34124206
Ksuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Green2
пример работы с коллекцией files

var fso,f,f1,fc,s;
fso=WScript.CreateObject("Scripting.FileSystemObject");
f=fso.GetFolder("C:\\");
fc=new Enumerator(f.files);
s="";
for(;!fc.atEnd();fc.moveNext())
{ s+=fc.item().":"+fc.item().DateCreated;
s+="\n";
}
WScript.Echo(s);
--



Posted via ActualForum NNTP Server 1.3
А у тебя нет какой-либо документации по работе с FSO в Яве?
...
Рейтинг: 0 / 0
Автоматизация удаления файлов с помощью пакетного файла
    #34126527
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть раздел в MSDN и кроме того документацию можно скачать отдельно.
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
25 сообщений из 28, страница 1 из 2
Форумы / Windows [игнор отключен] [закрыт для гостей] / Автоматизация удаления файлов с помощью пакетного файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]