Regex Ansible-在CentOS 6中删除登录窗口

Regex Ansible-在CentOS 6中删除登录窗口,regex,ansible,centos,centos6,Regex,Ansible,Centos,Centos6,我为CentOS workstation编写了一个强化脚本,我在Cent6系统的一个过程中遇到了麻烦,我想删除登录屏幕,让用户输入他们的登录ID 该文件是: /etc/gconf/gconf.xml.defaults/%gconf-tree.xml 以下是我试图编辑的行: <entry name="disable_user_list" mtime="1558109430" type="schema" stype="bool" owner="gdm-simple-greeter" gett

我为CentOS workstation编写了一个强化脚本,我在Cent6系统的一个过程中遇到了麻烦,我想删除登录屏幕,让用户输入他们的登录ID

该文件是:

/etc/gconf/gconf.xml.defaults/%gconf-tree.xml
以下是我试图编辑的行:

<entry name="disable_user_list" mtime="1558109430" type="schema" stype="bool" owner="gdm-simple-greeter" gettext_domain="gdm">
  <local_schema locale="C" short_desc="Do not show known users in the login window">
     <default type="bool" value="false"/>
     <longdesc>Set to true to disable showing known users in the login window.</longdesc>
   </local_schema>
</entry>
致:

由于此文件中有多个“disabe\u user\u list”,我不确定如何使用
inlinefile
选项编辑此特定字段。我很确定可能有一个正则表达式我可以使用,但我想不出来

有人有什么想法吗?

TL;博士 这里有一个可能的解决方案

-xml:
路径:/etc/gconf/gconf.xml.defaults/%gconf-tree.xml
xpath:“/entry[@name='disable\u user\u list']/local\u schema[@short\u desc='don show'don show'not show'known users in login window']/default[@type='bool']”
属性:值
价值:“真实”

该模块似乎比使用正则表达式更好

这可能是您的解决方案,但是,当然,您必须使用文件中可能包含的其他
disabe\u user\u列表
条目来验证这一点

此PoxBooad中的XPath认为,该条目是基于以下事实:

  • 条目
    节点名为
    禁用用户列表
  • entry
    下的
    local\u schema
    节点有一个
    short\u desc
    reading`在登录窗口中不显示已知用户``
  • local_schema
    下的
    default
    节点属于
    类型
    bool
  • 基于此,任务将针对
    属性,并将其设置为
    true

    考虑到这个剧本

    -主机:本地
    收集事实:不
    任务:
    -xml:
    路径:/etc/gconf/gconf.xml.defaults/%gconf-tree.xml
    xpath:“/entry[@name='disable\u user\u list']/local\u schema[@short\u desc='don show'don show'not show'known users in login window']/default[@type='bool']”
    属性:值
    价值:“真实”
    
    下面是一个执行示例

    cat /etc/gconf/gconf.xml.defaults/%gconf-tree.xml && ansible-playbook play.yml && cat /etc/gconf/gconf.xml.defaults/\%gconf-tree.xml 
    
    
    设置为true可禁用在登录窗口中显示已知用户。
    
    
    设置为true可禁用在登录窗口中显示已知用户。
    
    您考虑过吗?使用regex for xml总是让我想到这一点:)
    value="true"
    
    cat /etc/gconf/gconf.xml.defaults/%gconf-tree.xml && ansible-playbook play.yml && cat /etc/gconf/gconf.xml.defaults/\%gconf-tree.xml 
    
    PLAY [local] ***********************************************************************************************************************************************************************************************
    
    TASK [xml] *************************************************************************************************************************************************************************************************
    changed: [local]
    
    PLAY RECAP *************************************************************************************************************************************************************************************************
    local                      : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0