regex 通过ansible.builtin.lineinfile的特殊字符

odopli94  于 2023-04-07  发布在  其他
关注(0)|答案(1)|浏览(162)

我想,这个密码被破解是因为特殊字符。

- ansible.builtin.lineinfile:
    path: /etc/systemd/system/getty.target.wants/getty@tty1.service
    regexp: "^ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM"
    line: "ExecStart=-/sbin/agetty -a {{ ansible_user_id }} %I $TERM"

我该怎么弥补?

yv5phkfx

yv5phkfx1#

正如在评论中已经提到的,建议使用其他方法,例如ini_file模块。

  • 管理(添加、删除、更改)INI风格文件中的单个设置,而无需使用ansible.builtin.template等工具管理整个文件 *

对于test.service文件

[Service]
ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM

一个最小的示例剧本

---
- hosts: localhost
  become: false
  gather_facts: false

  tasks:

  - ini_file:
      path: "/home/{{ ansible_user }}/test/test.service"
      section: Service
      option: ExecStart
      value: "-/sbin/agetty -a {{ ansible_user }} %I $TERM"

将导致输出

[Service]
ExecStart = -/sbin/agetty -a user %I $TERM

类似问答

相关问题