2016-06-21 18 views
3

find moduleコマンドを編集して、remotebackupディレクトリ内の最新のXフォルダを見つけることはできますか?ありがとうX最新のフォルダ以外のすべてを削除する

- find: paths="{{ remotebackupdir }}" age="**find_oldest_folders_except_X_newer**" recurse=no 
    register: result 

    - debug: var=result.files 

    - file: path: "{{ remotebackupdir }}" state: absent 
    with_items: result.files 

答えて

3

Iveは何か類似しています。逆日付順に(ファイルを削除することにしているディレクトリに実行される)

- name: Get first 4 files 
    command: ls -trd -1 {{path}}/* | head -4 
    register: filenames 

- name: actually delete files 
    file: {{path}}/{{ item }} state=absent 
    with_items: filenames.stdout_lines 

基本的に-TRリストのもの、および-1すべてがオンになっている保証します:

はこのような何かを試してみてください1つの行と-dはディレクトリのみを表します

+0

「通常の」ファイル名がない場合は、[ls'を実行すると問題が発生する可能性があります](http://mywiki.wooledge.org/ParsingLs)あなたが 'find'と一緒に何かをハックする可能性があるか、perl/python/ruby​​でカスタムスクリプトを書くことができます。しかし、あなたがここに住むファイルをうまくコントロールできれば、これはうまくいくでしょう。 –

関連する問題