註冊任務的結果,當我調試變量之後之後。我得到的價值是雙引號,如"1234"
。如果我在另一個模塊或任務中使用,它將變爲[u'1234']
。使用註冊變量ansible去除單引號
我已刪除u和用括號替換字符。
如何擺脫單引號是ansible默認的。
Actual output : '1234'
expected output: 1234
劇本片斷
- uri:
url: http://test/ws?Id=4a3d
method: GET
content_as_json: yes
password: admin
user: admin
validate_certs: no
return_content: yes
HEADER_Cookie: "{{login.set_cookie}}"
register: name
- debug: msg="{{ name.content | regex_findall('name=\"(\d+)\"') }}"
register: test
- uri:
url: "http://test/ws?name={{test.msg | replace('u','') | replace('[','') | replace(']','')}}"
method: GET
content_as_json: true
password: admin
user: admin
validate_certs: no
return_content: yes
HEADER_Cookie: "{{login.set_cookie}}"
我用int
也但返回0
{{test.msg | replace('u','') | replace('[','') | replace(']','') | int}}
URI模塊輸出:在
"<listResponse type=\"cust\" count=\"1\"><instance name=\"1234\" id=\"abcd\" customerRefId=\"xyz\" refId1=\"2345\" type=\"org\" enabled=\"true\" phone=\"\" fax=\"\" billingZip=\"\" billingAddress=\"\" billingCity=\"\" billingCountry=\"\" billingState=\"\" vendorId=\"1\" defaultEmail=\"pqr\" defaultContactName=\"wer\"/></listResponse>"
請添加您的playbook片段。我懷疑還有更好的辦法。 –
添加了代碼片段 –
爲什麼在這裏使用debug?只需將'regex_findall'提供給下一個任務的url即可。 –