Ansible 是一个自动化工具,可以通过编写 Playbooks 来自动化管理和配置网络设备、虚拟机、服务器等。在 Ansible 中,`m command` 是一个常用的模块,可以用于在受控节点上执行命令。本文将介绍如何使用 Ansible 的 `m command` 模块来执行命令,并通过实例演示如何管理主机。

首先,我们需要在 Ansible 主控节点上安装 Ansible,并配置好所需的主机清单文件。在主机清单文件中,我们需要指定要管理的主机组和主机的 IP 地址。接下来,我们可以编写一个 Playbook,并使用 `m command` 模块来执行命令。

下面是一个简单的 Playbook 示例如何使用 `m command` 模块执行命令:

```yaml
---
- name: 使用 m command 模块执行命令
hosts: all
tasks:
- name: 执行 ls 命令
command: ls
```

在上面的 Playbook 中,我们定义了一个名为“使用 m command 模块执行命令”的 Play,它将在所有主机上执行 `ls` 命令。我们可以保存这个 Playbook 为 `run_command.yml` 文件,并使用 `ansible-playbook` 命令来运行它:

```
ansible-playbook -i inventory.ini run_command.yml
```

通过运行上述命令,就可以在受控节点上执行 `ls` 命令了。除了执行系统命令,`m command` 模块还可以执行复杂的命令或脚本,并可以处理命令的输出结果。

除了在 Playbooks 中直接使用 `m command` 模块外,我们还可以使用 Ansible ad-hoc 命令来执行临时命令。下面是一个示例 ad-hoc 命令:

```
ansible all -i inventory.ini -m command -a "uptime"
```

上面的命令将显示所有主机的系统 uptime。通过使用 ad-hoc 命令,我们可以快速地在受控节点上执行命令,而不需要编写复杂的 Playbooks。

总的来说,`m command` 模块是 Ansible 中非常有用的一个模块,可以帮助我们在受控节点上执行命令并管理主机。通过编写 Playbooks 和使用 ad-hoc 命令,我们可以更加灵活和高效地管理和配置主机。希望本文能帮助你更好地理解和使用 Ansible 中的 `m command` 模块。