use*_*292 5 shell ansible ansible-playbook
我想使用 cat 以 ansible 打印出文本文件的结果。这是我的代码。
tasks:
- name: This option
script: "./getIt.py -s {{ myhostname }} -u {{ myuser }} -p {{ mypass }} >> ./It.txt"
shell: cat ./It.txt
when: user_option == 'L'
Run Code Online (Sandbox Code Playgroud)
然而这行不通。我究竟做错了什么?
您正在尝试从单个任务调用两个不同的模块:脚本和外壳。您需要将它们分解……每个任务一个模块!但是,通过使用register捕获脚本的输出,并在后续任务中使用调试模块来显示它,有一种更好的方法来做到这一点:
tasks:
- name: This option
script: "./getIt.py -s {{ myhostname }} -u {{ myuser }} -p {{ mypass }}"
register: script
when: user_option == 'L'
- name: stdout of getIt
debug: msg={{ script.stdout }}
when: script is defined and script|succeeded
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12029 次 |
| 最近记录: |