Here is a solution based on my previous answer without sorting but using
a sorting list to be able to catch the unicity :
- hosts: localhost
tasks:
- name: "get file"
slurp:
src: file.txt
register: myfile
- name: "debug"
debug:
msg: "{{
myfile['content']|b64decode|regex_replace('\n+','\\n')|regex_replace('\n$','')
}}"
- name: "print contents of file"
set_fact:
mycontent: "{{
myfile['content']|b64decode|regex_replace('\n+','\\n')|regex_replace('\n$','')
}}"
- name: "sort"
set_fact:
content_sorted: "{{ mycontent.split('\n')|sort|unique }}"
- name: "content sorted"
debug:
msg: "{{ content_sorted }}"
- name: "create end list"
set_fact:
final_content: "{{ final_content|default([])|union([item]) }}"
content_sorted: "{{ content_sorted|difference([item]) }}"
with_items: "{{ mycontent.split('\n') }}"
- name: "debug"
debug:
msg: "{{ final_content }} sort {{ content_sorted }}"
- name: "create file"
copy:
content: "{{ final_content|join('\n') }}"
dest: "file2.txt"
Regards,
JYL