Ansibleで対象ディレクトリ配下のファイルを一括操作するメモ
はじめに
この記事ではAnsibleを使って対象ディレクトリ配下の複数ファイルをまとめて操作する方法を紹介します。
実行環境
Ansible 2.7
クライアント側OS:Linux
概要
- findコマンドで対象ディレクトリ配下のファイル名一覧を取得。
- Ansibleのwith_linesに一覧を渡してファイル毎に操作。
サンプル
改行コードをCRLFからLFに一括変換してみます。
・クライアント側ディレクトリ構成
/home/user/sample
|---aaa
| |---a.txt
| |---bbb
| |---b.txt
|---ccc
|---c.txt
・Ansibleのロール
main.yml
- name: convert CRLF to LF
replace:
path: '{{ item }}'
regexp: '\r'
with_lines: find /home/user/sample/* -type f
・実行結果
TASK [main : replace]
changed: [localhost] => (item=/home/user/sample/aaa/bbb/b.txt)
changed: [localhost] => (item=/home/user/sample/aaa/a.txt)
changed: [localhost] => (item=/home/user/sample/ccc/c.txt)
with_fileglob: /home/user/sample/*
では再帰的に処理してくれないので注意。
参考
Author And Source
この問題について(Ansibleで対象ディレクトリ配下のファイルを一括操作するメモ), 我々は、より多くの情報をここで見つけました https://qiita.com/chi-tara/items/7ab9ee2bb8312c8631dd著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .