cisco.asa.asa_command 模块 – 在 Cisco ASA 设备上运行任意命令
注意
此模块是 cisco.asa 集合 (版本 6.0.0) 的一部分。
如果您正在使用 ansible 软件包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list。
要安装它,请使用: ansible-galaxy collection install cisco.asa。
要在 playbook 中使用它,请指定: cisco.asa.asa_command。
注意
cisco.asa 集合已被弃用,并将从 Ansible 12 中移除。有关更多信息,请参见 讨论主题。
cisco.asa 1.0.0 中的新增功能
概要
- 将任意命令发送到 ASA 节点并返回从设备读取的结果。 - asa_command模块包含一个参数,该参数将使模块在返回之前等待特定条件,或者如果未满足条件则超时。
参数
| 参数 | 注释 | 
|---|---|
| 通过配置的提供程序发送到远程设备的命令列表。返回命令的输出结果。如果提供了 *wait_for* 参数,则在满足条件或重试次数过期之前,模块不会返回。 | |
| 如果您在多上下文模式下运行 ASA,则指定要定位的上下文。默认为您登录到的当前上下文。 | |
| 配置以秒为单位的间隔,用于在命令重试之间等待。如果命令未通过指定的条件,则间隔指示在再次尝试命令之前要等待多长时间。 默认值:  | |
| *match* 参数与 *wait_for* 参数结合使用,用于指定匹配策略。有效值为  选项 
 | |
| 设置为 True 时,保存运行配置密码的明文。默认为 False 选项 
 | |
| 指定在命令被认为失败之前应尝试的重试次数。命令在每次重试时都在目标设备上运行,并根据 *wait_for* 条件进行评估。 默认值:  | |
| 要根据命令输出评估的条件列表。任务将在继续之前等待每个条件都为真。如果在配置的重试次数内条件不为真,则任务失败。参见示例。 | 
备注
注意
- 处理 wait_for 时,每个命令的输出都存储为 *result* 数组的元素。允许用于条件评估的操作符是 *eq*、*==*、*neq*、*ne*、*!=*、*gt*、*>*、*ge*、*>= *、*lt*、*<*、*le*、*<= *、*contains*、*matches*。操作符可以以 *not* 为前缀来否定其含义。*contains* 操作符搜索子字符串匹配(类似于 Python 的 *in* 操作符)。*matches* 操作符使用正则表达式搜索操作进行搜索。 
- 有关使用 Ansible 管理网络设备的更多信息,请参见:ref:`Ansible 网络指南 - ` 
示例
- name: Show the ASA version
  cisco.asa.asa_command:
    commands:
      - show version
- name: Show ASA drops and memory
  cisco.asa.asa_command:
    commands:
      - show asp drop
      - show memory
- name: Send repeat pings and wait for the result to pass 100%
  cisco.asa.asa_command:
    commands:
      - ping 8.8.8.8 repeat 20 size 350
    wait_for:
      - result[0] contains 100
    retries: 2
返回值
常见的返回值在 此处 有记录,以下是此模块独有的字段
| 键 | 描述 | 
|---|---|
| 失败的条件 返回:失败 示例:  | |
| 命令的响应集 返回:始终 示例:  | |
| stdout 的值拆分为列表 返回:始终 示例:  | 
