所以我有一個場景,我在一臺機器上執行一個shell命令,使用ansible獲得標準輸出的一些信息。我正在使用register
將其結果記錄在一個變量my_info
中,並使用debug
打印my_info
,我看到其結果附有\n
(Ansible附加了\ n。在Linux上的相同命令不附加\ n「)。當我使用在模板中my_info
的配置它打印新線的配置,因此搞亂了我的配置如何從shell命令的標準輸出運行中刪除換行符
下面是代碼和輸出如何去
Ansible代碼:。
- name: calculate range address start
raw: grep 'CONFIG_PARAMS' /path/to/the/file | head -n 1
register: my_info
輸出:
ok: [My_HOST] => {
"msg": "CONFIG_PARAMS\n"
}
我們怎樣從這個輸出中剝離空間,或者可能在模板中進行更改以避免打印新行。
這是一個更好的方法。除了沒有安裝Python的系統之外,我還沒有看到有一個很好的理由可以使用'raw',並且這個用例應該是使用'raw'來設置Python。 – ydaetskcoR
@AKS你是對的。只有按照文檔中定義的用例才需要使用'raw'命令。我已將它更改爲'shell'。非常感謝 。 –
@ydaetskcoR同意。將命令更改爲shell –