2016-08-19 3 views
-2

DebianベースのOSにシェルスクリプトをビルドして、どのフォルダにMakefileがあるかを再帰的に参照して特定する必要があります。存在する場合は、パッケージを作成します。存在しない場合は、それらのフォルダを一覧表示します。ここに示すキャッチは、親フォルダ(ABC)の下の1つのフォルダのみを参照し、MakefileがFolder1、Folder 2 ...などの下にあるかどうかを確認し、Folder1のサブディレクトリに移動しないようにする必要がありますMakefileはフォルダFolder1.1、フォルダ1.2、Folder2.1などの下にあります)。 1つのレベルだけをループして、フォルダABCに戻り、検索を開始する方法についてのヒントを探してください。シェルディレクトリ内のメイクファイルを再帰的に検索するためのスクリプト

ABC--- 
     |---Folder1 
     |   |-------Makefile 
       |-------Folder1.1 
       |-------Folder1.2 

     |---Folder2 
     |   |-------Somefile 
       |-------Folder2.1 
       |-------Folder2.2 
     |---FolderN 
     |   |-------Makefile 
       |-------FolderN.1 
       |-------FolderN.2 
+1

これまでに何を試みましたか? 'find'のmanページを見て、どこかであなたを得るかもしれないかどうかを見てください。 – larsks

+1

あなたがABCフォルダにいる場合は、 'findを試してください。 -maxdepth 2 -type f -ame 'makefile''を実行します。ここでmaxdepthはあなたが動くことができる最大のディレクトリの数を指します、あなたが 'maxdepth'オプションを期待していることを期待してください。 – karthikraj

+0

@kathikrajあなたのコメントは答えに値する – Jeel

答えて

0

上記のコメントでKarthikrajが回答しました。これは役に立った

find . -maxdepth 2 -type f -iname 'makefile' 
関連する問題