Ansible Playbook keeps adding ^M to my files

时间:2018-07-16 15:26:21

标签: ansible character

I have the below ansible playbook where i am identifying a string in a file and replacing it with another

---
- name: Ansible Playbook
  hosts: webserver1
  remote_user: user45

  tasks:
  - name: Replacing content with other
    lineinfile:
     path: /home/user45/run.sh
     regexp: '^(.*)DEBUG=(.*)$'
     line: 'DEBUG=ON'

the above works, but it adds ^M to the end of every other line in that file and every blank line

From what I have read online this normally occurs when you copy and paste from Windows to Linux but i typed this out manually so i am kind of stumped

Playbook is running on Linux Redhat 7

2 个答案:

答案 0 :(得分:0)

请验证您的脚本“ /home/user45/run.sh”。其中似乎有回车符。

答案 1 :(得分:0)

出于任何原因,lineinfile都添加了^ M ..如果我将其更改为使用replace模块,则不会添加^ M位

---
- name: Ansible Playbook
  hosts: webserver1
  remote_user: user45

  tasks:
  - name: Replacing content with other
    replace:
     dest: /home/user45/run.sh
     regexp: 'DEBUG=.*'
     line: 'DEBUG=ON'