Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Find directories without subdirectories Post 302623329 by methyl on Friday 13th of April 2012 11:56:38 AM
Old 04-13-2012
One idea is to look at each directory and count the number of directories in that directory. The deepest directory in a tree will only have two directories (. and ..) .
Code:
START_DIR="$1"
if [ "${START_DIR}""X" = "X" ]
then
        START_DIR="."
fi
#
find "${START_DIR}" -type d -print|sort|while read DIR
do
        DIR_COUNT=`ls -la "${DIR}"|grep \^d|wc -l`
        if [ ${DIR_COUNT} -eq 2 ]
        then
                FILE_COUNT=`ls -la "${DIR}"|grep \^\-|wc -l`
                if [ ${FILE_COUNT} -gt 0 ]
                then
                        echo "${DIR}"
                fi
        fi
done

I don't have the locate command and I can't see the relevance of the which command unless the idea is to create a special $PATH and use path searching commands like which to find what's in the tree.

Last edited by methyl; 04-13-2012 at 01:18 PM..
This User Gave Thanks to methyl For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Permissions for Directories and Subdirectories

Is it possible to have a directory owned (by root) with permissions drwx------ and then have a sub directory of rwxrwxrwx. I know that this may be soo simple but I had no luck googling it. Thanks for your help (1 Reply)
Discussion started by: clancymf
1 Replies

2. Shell Programming and Scripting

Display only subdirectories from given directories

Hi Genius, I would like to display all the subdirectories only with timestamp. For exmple: Given Directory : orabkup /orabkup total 11365112 drwxr-xr-x 9 oracle oradba 256 Jan 03 16:01 db1 /orabkup/db1: total 0 drwxr-xr-x 2 oracle oradba 256 Jan 03 16:01... (8 Replies)
Discussion started by: HAA
8 Replies

3. UNIX for Dummies Questions & Answers

Compare/Diff between directories and subdirectories?

Hi, Does anybody know the cmd to compare two areas and print out the different files w/ path? I tried cmp and diff and dircmp but with no luck. Should I grep and print? For example: /aa/images/jan ..../images/feb /bb/images/jan ..../images/feb i want to print the compare,... (5 Replies)
Discussion started by: andylee80
5 Replies

4. Windows & DOS: Issues & Discussions

Backup Directories and SubDirectories with log using DOS

Hello. I need to Backup an Directorie with Sub-directories and after that put in a log file. Then i need to copy several files and have a log file to. All that using old DOS. Could someone help ? Thanks in advance (1 Reply)
Discussion started by: osramos
1 Replies

5. Shell Programming and Scripting

Listing directories and subdirectories

How can list the directories and the subdirectories in a folder. It is possible with a single UNIX command. For example i have a folder named "archive" and another folder named "0808" and then multiple folders are there ... Can i list all the directories and subdirectories in the folder... (6 Replies)
Discussion started by: karansachdeva
6 Replies

6. AIX

recursive archive directories and subdirectories

Hi everyone, Maybe this is simple question for many of you, but I get confused.:confused: How to archive a parent directory which contains some subdirectories and some files? I have searched this forum, there are some commands like tar,etc, I tried but can not be implemented in my system.... (6 Replies)
Discussion started by: wilsonSurya
6 Replies

7. Shell Programming and Scripting

backup of directories and subdirectories

Hello I'm new to the area Bash scripting and that is why I have a search script that is run on my unix server and always when I start the server or every 24 hours The script will create backups of directories and subdirectories I never found what I'm here make a new thread ... (1 Reply)
Discussion started by: HansWurst
1 Replies

8. Shell Programming and Scripting

push and pop directories and subdirectories

I need to use pushd and popd to navigate all of the subdirectories in my current directory. I know how to get into each subdirectory, add it to the stack, and pop back out, but i cant figure out how to get into subdirectories deeper than the first without adding a foreach and if statement for... (1 Reply)
Discussion started by: ollie88r
1 Replies

9. UNIX for Dummies Questions & Answers

show all text files in directories and subdirectories

Hi! I am trying to find all text files in my home directory that contain the string "C-d" so I tyied this : cd ~ find . -type f -exec grep -l "C-d" {} + but it took very long so I tryed this : ls -aR | xargs file |grep text but it didn't descend in the directories and it said :... (3 Replies)
Discussion started by: kelamahim
3 Replies

10. Shell Programming and Scripting

Zip all the files including directories - subdirectories

Hi, Is is possible to zip a folder and all its contents within the folder ( including sub-directories and files) into a zip file? and can regain the same structure if unzipped? Thanks (6 Replies)
Discussion started by: rudoraj
6 Replies
Wanted(3pm)						User Contributed Perl Documentation					       Wanted(3pm)

NAME
File::Find::Wanted - More obvious wrapper around File::Find VERSION
Version 1.00 SYNOPSIS
File::Find is a great module, except that it doesn't actually find anything. Its "find()" function walks a directory tree and calls a callback function. Unfortunately, the callback function is deceptively called "wanted", which implies that it should return a boolean saying whether you want the file. That's not how it works. Most of the time you call "find()", you just want to build a list of files. There are other modules that do this for you, most notably Richard Clamp's great File::Find::Rule, but in many cases, it's overkill, and you need to learn a new syntax. With the "find_wanted" function, you supply a callback sub and a list of starting directories, but the sub actually should return a boolean saying whether you want the file in your list or not. To get a list of all files ending in .jpg: my @files = find_wanted( sub { -f && /.jpg$/ }, $dir ); For a list of all directories that are not CVS or .svn: my @files = find_wanted( sub { -d && !/^(CVS|.svn)$/ }, $dir ) ); It's easy, direct, and simple. WHY DO THIS
? The cynical may say "that's just the same as doing this": my @files; find( sub { push @files, $File::Find::name if -f && /.jpg$/ }, $dir ); Sure it is, but File::Find::Wanted makes it more obvious, and saves a line of code. That's worth it to me. I'd like it if find_wanted() made its way into the File::Find distro, but for now, this will do. FUNCTIONS
find_wanted( &wanted, @directories ) Descends through @directories, calling the wanted function as it finds each file. The function returns a list of all the files and directories for which the wanted function returned a true value. This is just a wrapper around "File::Find::find()". See File::Find for details on how to modify its behavior. COPYRIGHT &; LICENSE Copyright 2005-2012 Andy Lester. This program is free software; you can redistribute it and/or modify it under the terms of the Artistic License v2.0. perl v5.14.2 2012-06-08 Wanted(3pm)
All times are GMT -4. The time now is 09:20 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy