私はAnsiblesreplace
モジュールを使用しており、ファイル内の最初の項目のみを変更したいと思います。
サンプル文字列があります。
example.string.in.my.text=test.@@sometext@@
私は希望:
example.string.in.my.text=test.$$sometext@@
My Ansibleはreplace
ゲームにこのモジュールを使用します。
- name: tasks replace
replace:
regexp: '(@@+?)'
replace: '$$'
この使命は私のすべてを変えました@@
example.string.in.my.text=test.$$sometext$$
最初の発生のみを変更するにはどうすればよいですか@@
?
ベストアンサー1
GMasterの答えは、各行の最後の項目と一致します。次のバージョンでは、非欲張りマッチングを使用して行の最初の一致を検索し、欲張りマッチングを使用して次の行と一致しないようにファイルの残りの部分を見つけます。
- name: tasks replace
replace:
regexp: '^(.*?\.)@@([.\n]*)$'
replace: '\1$$\2'
最新のコミュニティバージョンに基づいて回答https://docs.ansible.com/ansible/latest/collections/ansible/builtin/replace_module.html