首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将命令行参数传递给Ansible角色中的系统脚本?

在Ansible中,可以通过使用变量来将命令行参数传递给Ansible角色中的系统脚本。具体步骤如下:

  1. 在Ansible角色的任务文件中定义变量,用于接收命令行参数。例如,可以在vars部分定义一个变量command_args
代码语言:yaml
复制
---
- name: Execute system script
  hosts: all
  vars:
    command_args: "{{ ansible_play_hosts_all }}"
  tasks:
    - name: Run system script
      shell: /path/to/system_script.sh {{ command_args }}
  1. 在命令行中运行Ansible时,通过--extra-vars参数传递命令行参数。例如,假设要传递参数arg1arg2,可以使用以下命令:
代码语言:bash
复制
ansible-playbook playbook.yml --extra-vars "command_args=arg1,arg2"
  1. 在系统脚本中,可以通过{{ command_args }}来引用传递的命令行参数。在上述示例中,系统脚本/path/to/system_script.sh可以通过$1$2来获取参数arg1arg2
代码语言:bash
复制
#!/bin/bash
arg1=$1
arg2=$2

# 使用传递的参数进行操作
echo "Argument 1: $arg1"
echo "Argument 2: $arg2"

这样,通过以上步骤,就可以将命令行参数传递给Ansible角色中的系统脚本。请注意,这只是一种示例方法,实际使用时可以根据需求进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券