我已经使用getent_module收集了所有用户的列表:
- name: Get user info
getent:
database: passed
这会将这个变量作为 getent_passwd 返回,一个像这样的字典:
{
"uuidd": [
"x",
"107",
"112",
"",
"/run/uuidd",
"/usr/sbin/nologin"
],
"www-data": [
"x",
"33",
"33",
"www-data",
"/var/www",
"/usr/sbin/nologin"
]
}
我试图返回一组用户,包括一些特定的用户,找到 item.value 的键,其中“/home”是值数组项之一的一部分,而“nologin”不是。这是我到目前为止写的代码,但它不正确。
- name: style the user list
set_fact:
my_users: "{{ item.key | default([]) }}"
when:
- "'nologin' not in (item.value)"
- "'/home' search in (item.value)"
loop: "{{ lookup('dict', getent_passwd) }}"
我应该如何改变我的条件以获得预期的结果?