|
|
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Возникла такая проблема. Я полный ноль в написании .bat файлов, но необходимо автоматизировать следующую задачу. Каждый день создаётся новый архив данных. Срок хранения архива 7 дней. Поэтому необходимо, чтобы каждый день удалялись архивы недельной давности. Как это описать. Посмотрела команду Del, а там ничего такого нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2006, 10:31 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
наример так: Код: plaintext 1. 2. 3. 4. 5. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2006, 10:33 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2006, 11:05 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2006, 11:05 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov наример так: Код: plaintext 1. 2. 3. 4. 5. Спасибо, идея хорошая. Но как раз проблема в названиях файлов. По регламенту, они обязаны создаваться в след. формате: например, exp_full_06_11_1, т.е. файл создан 1 ноября 2006 года. Сегодня будет создан новый как exp_full_06_11_2. Т.е. необходимо обработать название файлы, а именно его дату и сравнить с системной даты. Вычислить разницу и удалить файл недельной давности. Т.е. это моё представление алгоритма. Может, можно и по-другому как-то? А Java скрипты я писать не умею. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 11:11 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Т.е. exp_full_06_11_1.rar ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 11:13 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Может, можно как-то получить доступ к свойству файла - дата создания, и как-нибудь обрабатывать её? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2006, 12:43 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2006, 20:13 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
KsuhaЗдравствуйте! Возникла такая проблема. Я полный ноль в написании .bat файлов, но необходимо автоматизировать следующую задачу. Каждый день создаётся новый архив данных. Срок хранения архива 7 дней. Поэтому необходимо, чтобы каждый день удалялись архивы недельной давности. Как это описать. Посмотрела команду Del, а там ничего такого нет.Хе. Скажу Вам по секрету, что Оракл, помоему Ваш случай, умеет это делать сам (RMAN) и SQL Server тоже (Maintence plan). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2006, 23:12 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
В команде Delete можно использовать подстановочные символы "*", т.е. команда будет такая: Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2006, 23:34 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
root_sql KsuhaМожет, можно как-то получить доступ к свойству файла - дата создания, и как-нибудь обрабатывать её? Можно воспользоваться VBS, задача похожая - удаляеет самые старые файлы из указанного какталога (не смотрит подкаталоги) если размер превышает указанный лимит в байтах, работает с названиями файлов вида dd.mm.yyyy (например 10.10.2006) создать файл название.vbs и поместить код, который можно переработать и лишнее убрать:... О, Мама Мия! Вы хотите, чтобы меня кондрашка хватила??? Я поняла одно, простого ничего придумать нельзя. Ладно, буду ручками делать. :(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 10:58 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Relic Hunter KsuhaЗдравствуйте! Возникла такая проблема. Я полный ноль в написании .bat файлов, но необходимо автоматизировать следующую задачу. Каждый день создаётся новый архив данных. Срок хранения архива 7 дней. Поэтому необходимо, чтобы каждый день удалялись архивы недельной давности. Как это описать. Посмотрела команду Del, а там ничего такого нет.Хе. Скажу Вам по секрету, что Оракл, помоему Ваш случай, умеет это делать сам (RMAN) и SQL Server тоже (Maintence plan). Да, это действительно Оракл. А как Вы догадались??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 10:59 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
KsuhaДа, это действительно Оракл. А как Вы догадались??? а этот архив - не резервная ли копия базы ? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 11:15 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Biz© KsuhaДа, это действительно Оракл. А как Вы догадались??? а этот архив - не резервная ли копия базы ? ;) ДА, это копия. А что, Вы хотите получить доступ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 16:27 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Я специально для этих целей написал утилитку - расшириненние для команды dir, которая окоромя маски понимает также и даты. Соответсвенно в бат фале можно получить список файлов, дата модификации которых раньше чем семь дней назад. Потом файлы можно удалить согласно списка. все наши на www.corba.kubsu.ru ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 17:40 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Ksuha Biz© KsuhaДа, это действительно Оракл. А как Вы догадались??? а этот архив - не резервная ли копия базы ? ;) ДА, это копия. А что, Вы хотите получить доступ? ну дык пользуйте штатные средства ... вам уже указали на RMAN и его возможности ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2006, 20:51 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Ggg_oldЯ специально для этих целей написал утилитку - расшириненние для команды dir, которая окоромя маски понимает также и даты. Соответсвенно в бат фале можно получить список файлов, дата модификации которых раньше чем семь дней назад. Потом файлы можно удалить согласно списка. все наши на www.corba.kubsu.ru Дайте точную ссылку, пожалуйста, пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2006, 14:30 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
пример работы с коллекцией 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2006, 14:48 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. -- Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2006, 14:53 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. Этот текст сохрани в файле с расширением VBS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2006, 15:14 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
А существует ли какая-либо среда программирования для VBScript? Чтобы я могла набрать команду, нажать F1 и мне бы выдалась бы справка по этой команде или объекту? Чтобы там был Help? А то когда это дело пишешь в текстовом файле, потом компилируешь, и если он выдаёт ошибку, то узнать об этой ошибке что-либо, либо почитать справку нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2006, 13:09 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
я не нашел, правда есть отладчик сценариев, но я обычно пишу скрипты на javaScript в Dreamwer -- Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2006, 13:12 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
Green2 я не нашел, правда есть отладчик сценариев, но я обычно пишу скрипты на javaScript в Dreamwer -- Posted via ActualForum NNTP Server 1.3 Но должно же быть хоть что-то. А Яву я просто хуже понимаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2006, 15:17 |
|
||
|
Автоматизация удаления файлов с помощью пакетного файла
|
|||
|---|---|---|---|
|
#18+
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 в Яве? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2006, 15:19 |
|
||
|
|

start [/forum/topic.php?fid=26&fpage=427&tid=1508967]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 356ms |

| 0 / 0 |
