小编Smi*_*ily的帖子

写入 csv 文件

我需要使用 ansible 将一些内容以 csv 格式写入文件

shell: ps -ef | grep java | awk '{print $1}'
register: username

shell: ps -ef | grep java | awk '{print $2}'
register: id
Run Code Online (Sandbox Code Playgroud)

用户名的输出将类似于:

root
admin
test_admin
Run Code Online (Sandbox Code Playgroud)

id 的输出将类似于:

1232
4343
2233
Run Code Online (Sandbox Code Playgroud)

所以我希望将其写入 csv 文件

root,1232
admin,4343
test_admin,2233
Run Code Online (Sandbox Code Playgroud)

请建议。

csv ansible

4
推荐指数
1
解决办法
1万
查看次数

仅在本地主机上运行一次任务

我有一本将在许多服务器(比如说十台)上运行的剧本。前三个任务将在远程服务器上运行。最后一个合并任务是在 localhost(Ansible 控制器)上完成的。

当我运行这个剧本时,每次都会发生合并(即:十次)。
我只想在所有服务器上完成上述所有任务后只执行一次合并任务。

---
- name: Find the location 
  debug: 
 
- name: Extract details
  debug: 

- name: Create csv file
  debug:

- name: Merge files
  debug:
  delegate_to: localhost 
Run Code Online (Sandbox Code Playgroud)

ansible

4
推荐指数
1
解决办法
6647
查看次数

Ansible:必须安装 sshpass 程序

Ansible命令:

ansible all -m module-name -o  -e "ansible_user=username ansible_password=password"  
Run Code Online (Sandbox Code Playgroud)

给出以下错误:

主机 IP | 失败的!=> {"msg": "要使用带有密码的 'ssh' 连接类型,您必须安装 sshpass 程序"}

ansible sshpass

4
推荐指数
1
解决办法
1万
查看次数

Ansible:从列表中删除空值并将其分配给新列表

我有一个使用任务收集的值在 ansible 中生成的列表。在该列表中,有一些空字符串,因为某些键没有分配给它们的值。所以,我想要实现的是将该列表分配给一个新列表,但没有那些空值。

list1: [
   "a",
   "b",
   "",
   "7",
   ""
]
Run Code Online (Sandbox Code Playgroud)

我尝试了以下方法,但似乎不起作用:

set_fact:
  list2: "{{ list1 1 | rejectattr('') |list }}"
Run Code Online (Sandbox Code Playgroud)

有没有人能够指出我做错了什么并为我的问题提供解决方案?

Ansible version: 2.9.1

ansible

2
推荐指数
1
解决办法
2572
查看次数

如何在ansible循环中跳过空值

我需要从 ansible 循环中的列表中跳过值 null。我正在使用 when 条件,仍然打印空值。下面是我的剧本:

 - hosts: localhost
   vars:
    show:
     - read
     - write
     - null
     - test
    val: []
   tasks:
   - name: Fact
     set_fact:
      val: "{{val+[item]}}"
     loop: "{{show}}"
     when: item != "null"

   - name: Print
     debug:
      msg: "{{val}}"
Run Code Online (Sandbox Code Playgroud)

输出:

TASK [Print] ***
ok: [localhost] => {
    "msg": [
        "read",
        "write",
        null,
        "test"
    ]
}
Run Code Online (Sandbox Code Playgroud)

请指教。

loops ansible

2
推荐指数
1
解决办法
706
查看次数

标签 统计

ansible ×5

csv ×1

loops ×1

sshpass ×1