ansible-playbook 是否可以从标准输入读取剧本?我想也许破折号 (-) 是一种指定 stdin 的方法,就像它在 cat 命令中所做的那样,我试过:

$ ansible-playbook -

但它失败了:
ERROR! the playbook: - could not be found

最佳答案

您正在寻找的是 /dev/stdin ,它的作用类似于一个文件,但顾名思义,它是当前进程的标准输入。

$ ansible-playbook -i localhost, -c local /dev/stdin <<'FOO'
- hosts: all
  tasks:
  - debug: msg="hello from stdin"
FOO
PLAY [all] *********************************************************************

TASK [Gathering Facts] *********************************************************
ok: [localhost]

TASK [debug] *******************************************************************
ok: [localhost] =>
  msg: hello from stdin

10-06 00:59