File Cleanup

File Cleanup 1.0.3.1

БлагоЯр

Участник
Сообщения
898
Реакции
86
А папки тоже удаляет?
К примеру имеем

mfconnect/​
dir1/1.log​
dir2/2.log​
...​

ставлю удаление файлов. Удалит при этом dir-ы?
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #42
Подпапки не удалит, но внутрь заглянет, если include_subdirectories включен.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #44
@fenix28rn, пустые только если.
 

yabaldeu

Добрая душа
Сообщения
203
Реакции
63
Подскажите, пожалуйста
Если в "Game Logs" указано

"path" "logs/"
"path" "addons/sourcemod/logs/"

Значит будут удаляться только файлы из этих директорий?
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #47
@yabaldeu, привет, и да и нет. Секцию нужно задублировать. Более одного пути в одном разделе оно пока не понимает.
 

yabaldeu

Добрая душа
Сообщения
203
Реакции
63
@yabaldeu, привет, и да и нет. Секцию нужно задублировать. Более одного пути в одном разделе оно пока не понимает.
Привет, получается, чтобы просто удалялись логи игр и sourcemod`a, то необходимо заполнить конфиг таким образом?
/**
* Конфигурационный файл для плагина [ANY] File Cleanup.
*/

// Корневая секция. НЕ ВИДОИЗМЕНЯЙТЕ ЕЁ!
"FileCleanup"
{
/**
* Здесь Вы можете создавать свои собственные секции-правила для удаления файлов.
* К примеру, в этой секции мы привели в качестве примера:
* -> Удаление всех логов движка/мода (.../csgo/logs - для CS:GO).
* -> Описали ВСЕ ДОСТУПНЫЕ параметры (включая опциональные).
*
* Имя секции-правила используется для записи в логах всех ошибок и состояний, если что-то заполнено неверно.
* ЗАМЕТКА: Имя секции может быть названо на русском, но не рекомендуется.
*/
"Game Logs"
{
/**
* Путь к папке, которую плагин должен обрабатывать.
* Путь заполняется от корня мода (csgo/cstrike/tf/l4d2/hl2mp).
* ЗАМЕТКА: путь обязательно должен заканчиваться слешем ("/")!
*/
"path" "logs/"

/**
* Максимальное время жизни для файла.
* Представлено в виде строки, описывающее время.
*
* i - минута.
* h - час.
* d - день.
* m - месяц.
* y - год.
*
* К примеру, запись "3i5h1d" будет прочитана как "1 день, 5 часов и 3 минуты", или 104580 секунд.
*/
"lifetime" "3d"

/**
* Используемый вид времени для проверки.
*
* 0 - с момента последнего доступа (не будет работать на файловых системах FAT)
* 1 - с момента создания (не будет работать на файловых системах FAT)
* 2 - с момента последнего изменения
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если он не указан явно, используется режим "с момента последнего изменения".
*/
"timemode" "2"

/**
* Просматривать подпапки при поиске файлов на удаление?
*
* 0 - нет.
* 1 - да.
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если он не указан явно, используется значение "нет" (подпапки не просматриваются).
*/
"include_subdirectories" "1"

/**
* Добавляет правило "с чего имя файла должно начинаться".
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если Вы оставите его пустым, или удалите полностью - плагин не будет проверять, с чего начинается имя файла.
*/
"starts_with" ""

/**
* Добавляет правило "как имя файла должно заканчиваться".
* Как правило, может использоваться для удаления файлов со специальными расширениями (вроде .dem или .log).
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если Вы оставите его пустым, или удалите полностью - плагин не будет проверять окончание имени файла.
*/
"ends_with" ""

/**
* ЗАМЕТКА: если Вы укажете и "starts_with" и "ends_with", плагин будет удалять только те файлы, которые УДОВЛЕТВОРЯЮТ ДВУМ УСЛОВИЯМ ОДНОВРЕМЕННО.
*/
}

"SourceMod logs"
{
"path" "addons/sourcemod/logs/"
"lifetime" "3d"
"timemode" "2"
"include_subdirectories" "1"
}
}
 

БлагоЯр

Участник
Сообщения
898
Реакции
86
Привет, получается, чтобы просто удалялись логи игр и sourcemod`a, то необходимо заполнить конфиг таким образом?
/**
* Конфигурационный файл для плагина [ANY] File Cleanup.
*/

// Корневая секция. НЕ ВИДОИЗМЕНЯЙТЕ ЕЁ!
"FileCleanup"
{
/**
* Здесь Вы можете создавать свои собственные секции-правила для удаления файлов.
* К примеру, в этой секции мы привели в качестве примера:
* -> Удаление всех логов движка/мода (.../csgo/logs - для CS:GO).
* -> Описали ВСЕ ДОСТУПНЫЕ параметры (включая опциональные).
*
* Имя секции-правила используется для записи в логах всех ошибок и состояний, если что-то заполнено неверно.
* ЗАМЕТКА: Имя секции может быть названо на русском, но не рекомендуется.
*/
"Game Logs"
{
/**
* Путь к папке, которую плагин должен обрабатывать.
* Путь заполняется от корня мода (csgo/cstrike/tf/l4d2/hl2mp).
* ЗАМЕТКА: путь обязательно должен заканчиваться слешем ("/")!
*/
"path" "logs/"

/**
* Максимальное время жизни для файла.
* Представлено в виде строки, описывающее время.
*
* i - минута.
* h - час.
* d - день.
* m - месяц.
* y - год.
*
* К примеру, запись "3i5h1d" будет прочитана как "1 день, 5 часов и 3 минуты", или 104580 секунд.
*/
"lifetime" "3d"

/**
* Используемый вид времени для проверки.
*
* 0 - с момента последнего доступа (не будет работать на файловых системах FAT)
* 1 - с момента создания (не будет работать на файловых системах FAT)
* 2 - с момента последнего изменения
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если он не указан явно, используется режим "с момента последнего изменения".
*/
"timemode" "2"

/**
* Просматривать подпапки при поиске файлов на удаление?
*
* 0 - нет.
* 1 - да.
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если он не указан явно, используется значение "нет" (подпапки не просматриваются).
*/
"include_subdirectories" "1"

/**
* Добавляет правило "с чего имя файла должно начинаться".
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если Вы оставите его пустым, или удалите полностью - плагин не будет проверять, с чего начинается имя файла.
*/
"starts_with" ""

/**
* Добавляет правило "как имя файла должно заканчиваться".
* Как правило, может использоваться для удаления файлов со специальными расширениями (вроде .dem или .log).
*
* ПАРАМЕТР НЕОБЯЗАТЕЛЕН. Если Вы оставите его пустым, или удалите полностью - плагин не будет проверять окончание имени файла.
*/
"ends_with" ""

/**
* ЗАМЕТКА: если Вы укажете и "starts_with" и "ends_with", плагин будет удалять только те файлы, которые УДОВЛЕТВОРЯЮТ ДВУМ УСЛОВИЯМ ОДНОВРЕМЕННО.
*/
}

"SourceMod logs"
{
"path" "addons/sourcemod/logs/"
"lifetime" "3d"
"timemode" "2"
"include_subdirectories" "1"
}
}
Да. По-крайней мере у меня так работает.
 

kylc

Не мир плох, плохи люди, обвиняющие во всем мир
Сообщения
924
Реакции
294
@Kruzya а можно попросить добавить в него переменную, которая еще будет проверять размер файла (например, = или != 0)?
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #51
@kylc, можно, но я пока не очень понимаю, для чего это реально может пригодиться. Обрисуй проблему, которую хочешь решать этой настройкой.
 

kylc

Не мир плох, плохи люди, обвиняющие во всем мир
Сообщения
924
Реакции
294
@kylc, можно, но я пока не очень понимаю, для чего это реально может пригодиться. Обрисуй проблему, которую хочешь решать этой настройкой.
Вообще оно нужно для того, чтобы фиксануть проблему плагина CCP Storage, чтобы удалять пустые json файлы, которые он сам создает, сам не заполняет и сам на них ругается, что они неправильно заполнены. Я думаю, что в платной версии, которую автор сейчас продает, это устранено, но в ней смысла пока большого не вижу.

Еще как вариант: если лог файл небольшой, ты знаешь, что там нет нужной инфы - его тоже можно сносить раньше, ибо он и так пустой, зачем его держать долго.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #53
Ну, ладно, подумаю, но это не быстро будет. И оно скорее всего в моей реализации будет отличаться, потому что писать парсер для выражений вида length > 10 как-то не хочется: скорее всего в конфиге просто будет структура вида:
C-подобный:
"expr" // Корень, вставляется в каждом разделе
{
    // LE - Left Expression
    // RE - Right Expression
    // Compare - сама операция
    "le"        "FileSize"
    "op"        "le" // le - less or equal; ge - great or equal; l - less; g - great; q - equal; ne - not equal
    "re"        "10"
}
 
  • Мне нравится
Реакции: kylc

Морковка

Котлетка ^^
Сообщения
878
Реакции
472
Ошибки на sm 1.11
C-подобный:
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(225) : warning 242: function "OnNewSection" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(235) : warning 242: function "OnEndSection" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(235) : warning 242: function "OnEndSection" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(235) : warning 242: function "OnEndSection" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(235) : warning 242: function "OnEndSection" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
// D:\AWPdusty_4one\csgo\addons\sourcemod\scripting\FileCleanup.sp(259) : warning 242: function "OnKeyValue" should return an explicit value
 

Dimanikumenyadima

Участник
Сообщения
106
Реакции
3
v34

We're got an error when processing configuration file (addons/sourcemod/data/file_cleanup.cfg) on line 0, column 0: Stream failed to open
 
Сверху Снизу