2016-08-19 7 views
-2

Ich muss ein Shell-Skript auf Debian-basierten OS zu rekursiv durchsuchen und identifizieren, welche Ordner Makefile vorhanden haben. Wenn vorhanden, baue das Paket. Wenn nicht vorhanden, dann listet diese Ordner auf. Der Haken hier ist wie folgt: Ich muss nur einen Ordner unter dem übergeordneten Ordner (ABC) durchsuchen und prüfen, ob Makefile unter Folder1, Folder 2 ... etc vorhanden ist und nicht in die Unterverzeichnisse von Folder1 (um nicht zu schauen) für Makefile unter Ordner Folder1.1, Folder 1.2, Folder2.1 etc). Suchen Sie nach Tipps, wie Sie nur eine Ebene durchlaufen und dann zurück zum Ordner ABC gehen und die Suche starten.Shell-Skript zum rekursiven Suchen von Makefile in Verzeichnissen

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

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

Was hast du bisher versucht? Sieh dir die 'find' Manpage an und sieh nach, ob dich das irgendwo hinbringt. – larsks

+1

Wenn Sie sich im ABC-Ordner befinden, versuchen Sie 'find. -maxdepth 2-type f -iname 'Makefile''. hier Maxdepth bezieht sich auf die Anzahl der Max Verzeichnisse, die Sie bewegen können, hoffe, Sie erwarten 'maxdepth' Option es scheint – karthikraj

+0

@kathikraj Ihr Kommentar verdient, eine Antwort zu sein – Jeel

Antwort

0

Wie von Karthikraj in obigen Kommentaren beantwortet. Dies half

find . -maxdepth 2 -type f -iname 'makefile' 
Verwandte Themen