0

i need to clear the contents of a file on remote hosts using shell module in ansible but unable to do so

---
 - hosts: ansi1
   become: yes
   gather_facts: no
   tasks:
   - name: checking shell power
     shell:
        >/tmp/1.txt
     args:
      executable: /bin/bash

Error:

ERROR! Syntax Error while loading YAML.


The error appears to have been in '/etc/ansible/shell.yml': line 8, column 10, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

     shell:
        >/tmp/1.txt
         ^ here
  • Maybe you wanted a colon in front? (The 'true' operator) – Jeff Schaller Jun 3 '17 at 6:51
0

@Jeff Schaller this helped to solve the issue,,

---
 - hosts: ansi2
   become: yes
   gather_facts: no
   tasks:
   - name: checking shell power
     shell:
             '>/tmp/1.txt'
     args:
      executable: /bin/bash

Now what if i have multiple commands to run

| improve this answer | |
0

You can use it as below for multiple commands:

    - name: Copy var directory
      shell: |
        cmd1
        cmd2
        cmd3
      args:
        executable: /bin/bash
| improve this answer | |
  • @Mohammed Ali if this works Can you please accept the answer – Santosh Garole Apr 17 at 14:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.