Редактирование файла¶
Редактирование файла — это политика, которая служит для редактирования текстовых файлов (замена строк)
Примечание
Данная политика доступна для выполнения на ОС:
Windows
Linux
macOS
Описание политики¶
После выбора шаблона политики откроются ее свойства
Вкладка «Политика» содержит следующие поля:
Название — наименование политики
Важно
Для выполнения или сохранения политики, название обязательно для заполнения
Путь к файлу — путь до файла подлежащего редактированию на удаленном устройстве
Шаблон строки — регулярное выражение для поиска строки в файле
Новая строка — строка для замены шаблона
Остальные вкладки описаны на странице Политики
Пример¶
При наличии текстового файла *.txt
, со следующим содержимым:
<
ip
hostname
>
Для изменения hostname
на произвольную строку, необходимо:
Нажать на кнопку Добавить Политику в верхнем правом углу экрана на странице «Политики»
Выбрать шаблон политики «Редактирование файла» из списка предложенных шаблонов
Заполнить поле
Название
Например: Редактирование txt
Заполнить поле
Путь к файлу
Например: home/user/Documents/имя_файла.txt
Заполнить поле
Шаблон строки
Например: hostname
Заполнить поле
Новая строка
Например: новая строка
Нажать на кнопку Сохранить
Выполнить
Тестовый запуск
на устройстве для проверки работоспособности политикиПосле выполнения политики содержимое файла будет изменено на:
<
ip
новая строка
>
Дополнительная информация¶
В файлах Ansible часто используются YAML и Jinja2, так что, регулярные выражения могут быть полезны для поиска определённых строк или шаблонов в этих файлах
Поиск по ключевому слову¶
Регулярное выражение для поиска строки, начинающейся с ключевого слова (например, hosts):
Шаблон строки: ^hosts
Поиск по переменной¶
Регулярное выражение для поиска строки, содержащей переменную (например, переменные в Jinja2 имеют синтаксис {{ variable_name }}):
Шаблон строки: {{s*w+s*}}
Поиск по ключу и значению¶
Регулярное выражение для поиска строки, описывающей ключ и значение в формате ключ: значение (например, для поиска ключа name):
Шаблон строки: ^name:s*(.*)$
Поиск по комментарию¶
Регулярное выражение для поиска строки, содержащей комментарий (начинается с #):
Шаблон строки: #.*
Примечание
С учетом этих примеров, вы можете адаптировать регулярное выражение для поиска конкретных строк, соответствующих вашим потребностям