2016-06-22 3 views
0

私のソフトウェア構築プロセスでは、特定の2つのフォルダ内に特定のファイルを生成しています。これら2つの特定のフォルダはレポ内に存在します(例:x/y/folder1 & x/y/folder2)。私のビルドプロセスが終了した後、私はいくつかのファイルが 'x/y'フォルダ内に生成されているのを見ます(例えばx/y/file1 & x/y/file2 & ..)。これらのファイルは無関係です。 x/y/folder1以外のすべてのファイル(x/y/file1 & x/y/file2 & ..)を削除するにはどうすればよいですか?& x/y/folder2私は関連するフォルダ(x/yなど)を最初にスキャンし、x/y/folder1以外のすべてを削除するために、ビルドスクリプト自体にこのチェックポイントを含める(ビルドプロセスが完了した後)& x/y/folder2よりクリーンな結果。linuxの特定のリポジトリ/フォルダをスキャンして、それ以外のものをすべて削除する方法

私が使用しています。Red Hat Enterprise Linuxのサーバーは5.11

+1

'find x/y -name 'フォルダ*'を使用できます。 xargs rm -f 'ファイルの削除のため – GMichael

+0

優秀!!我々はまた、上記のもの以外のフォルダ(ファイルのようなもの)を削除することはできますか?愚かな質問を申し訳ありませんが、ちょうどシェルの世界に上陸しました。 – Pratul

+0

はい、できます。正しい名前のマスクを貼り、 'rm -f'を' rm -rf'に置き換えてください。 – GMichael

答えて

1

検索をリリース。タイプf! -path "./folder1/ "! -path "./folder2/" | xargsが

たり、ファイルやフォルダを削除し、ちょうどあなたが

検索したいものを維持したいと思い、このID -f をRM。 ! -path "./folder1/"! -path "./folder2/" -exec rm -rf {} \;

+0

優秀!!上記のフォルダ以外のフォルダも削除できますか?愚かな質問を申し訳ありませんが、シェルの世界に上陸したばかりです。 – Pratul

+1

はい、ここにコマンドがあります。基本的にはタイプfを削除し、rmをfindの一部にしました。 "find!-path" ./folder1/ "!-path" ./folder2/ "-exec rm -rf {} \;" – Hani

関連する問題