ansible 模組之 command

command模組可以讓我們很方便地在託管節點(目標機器)執行命令,就像登入到遠端機器在其本地執行命令一樣。該模組是ansible-core的一部份,且預設包含在所有安裝ansible的裝置服務中。在大多數情況下,即使不指定collections:關鍵字,也可以直接使用短模組名稱命令(command),但官方建議使用全名(ansible。builtin。command),避免與可能具有相同模組名稱的其他集合發生衝突。

command模組幾個要注意的事項:

1,命令名稱後跟以空格分隔的引數列表,即command後面可以加引數,以空格隔開

2,

該命令不會透過外殼加工,

所以像變數$HOSTNAME和運算子“*”,“<”,“>”,“|”,“;”和“&”將不工作。如果需要這些功能,要使用ansible。builtin。shell模組

3,如果託管節點是windows伺服器,可以用ansible。windows。win_command模組。

4,如果想重啟系統,可以使用ansible。builtin。reboot或ansible。windows。win_reboot模組

command模組的引數說明:

ansible 模組之 command

例子:以下兩個例項是相同的效果

# 如果/path/to/database不存在則執行command- name: Run command ansible。builtin。command: /usr/create_database。sh db_user db_name args: creates: /path/to/database

# 採用cmd引數的形式- name: Run command ansible。builtin。command: cmd: /usr/create_database。sh db_user db_name creates: /path/to/database