Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Ноябрь 21, 2017, 03:32:32 am

Автор Тема: Сбор сведений по файловой системе  (Прочитано 1762 раз)

Оффлайн admin

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 981
  • Страна: ru
  • Рейтинг: +97/-0
    • Просмотр профиля
Выкладываю очень простой скрипт (за основу взят пример из документации Sense), сканирующий структуру папок с архивными файлами (в данном случае) .
Будет полезно сисадминам или лицам, их замещающих, а также тем кто работает без упомянутых специалистов.
Скрипт собирает информацию обо всех файлах в папке (включая входящие в нее) указанной в переменной vPathArc.
sub DoArc(Root)
  FOR Each File in filelist (Root&'\*.*')
arcfiles_tmp:
  LOAD '$(File)' as FileName,
    FileSize('$(File)') as FileSize,
FileTime('$(File)') as FileTime
autogenerate 1;
  NEXT File

  For each Dir in Dirlist(Root&'\*')
    Call DoArc(Dir)
  Next Dir
ENDSUB

call DoArc('$(vPathArc)')

arcfiles:
NoConcatenate
LOAD *,
mid(left(FileName,Index(FileName,' ')),1+index(left(FileName,Index(FileName,' ')),'\',-1)) as ArcJob
resident arcfiles_tmp;
DROP Table arcfiles_tmp;
STORE * from arcfiles into arc_files.qvd (qvd);
DROP Table arcfiles;
ArcJob - имя задания ( в примере оно вырезается из имени файла, например из имени "Doc_Full 20150318 22;00.zip" будет извлечено Doc_Full.
С объектами визуализации все просто, взять хотя бы блочную диаграмму с измерением ArcJob  и выражением sum(FileSize)...