Сбор данных обо всех исполняемых файлах на компьютере
Описание реализации
Реализация представлена в виде директивы c элементом Shell-скрипта, реализующего
функционал сбора данных обо всех исполняемых файлах на компьютере.
Описание вывода
Результатом исполнения скрипта является таблица со следующими колонками:
hostname - FQDN компьютера;
le_time - время исполнения скрипта;
DATA - абсолютные пути до всех исполняемых файлов, разделённые символами
||.
При необходимости разделительные символы возможно изменить.
Действия по настройке директивы
Подготовка скрипта сбора данных
Для подготовки скрипта сбора данных необходимо выполнить следующие действия:
- Создать директиву, включающую элемент Shell сбора данных с текстом скрипта:
bash << "EOF"
executable_files=()
while IFS= re
ad -r -d '' file; do
executable_files+=("$file")
done < <(find
/ -type f -executable -print0 2>/
echo -n "DATA: "
printf '%s||' "${executable_files@}"
EOF
d
ev/n
u
ll) - Во вкладке Настройки указать требуемое расписание запуска скрипта, включить
сбор статистики и результата. В свойствах добавить запись DATA; - Назначить с помощью ассоциации созданную директиву на группу с целевыми
компьютерами;
Действия по применению
В случае необходимости произвести сбор данных в очередной группе предлагается
выполнить следующие действия:
- Отключить элемент Shell-скрипта в директиве сбора данных;
- Переназначить с помощью ассоциации директиву сбора данных на
соответствующую группу; - Включить элемент Shell-скрипта в директиве сбора данных;
Ограничения/Комментарии - В случае необходимости изменить разделительные символы в выводе необходимо
отредактировать значения в кавычках в команде printf.
Пример
Команда: printf '%s;' "${executable_files@}"
Результат: Абсолютные пути до исполняемых файлов в выводе разделены
символом ;
Примечание: В случае указания в виде разделительного символа переход на
следующую строку (\n ) скрипт станет неработоспособным.