case
case

Reputation: 305

Find files in multiple directories

I am using RHEL. In my current folder there are sub folders. I need to find where a file is in the subfolders. The files may be in one or more.

I am using this but it iterates infinitely:

for f in ./{Failed,Loaded,ToLoad}; do find -name 'file';  done

How to get this right?

Upvotes: 5

Views: 12736

Answers (3)

codeforester
codeforester

Reputation: 43079

find can take multiple arguments for source directory. So, you could use:

find Failed Loaded ToLoad -name 'file' ...

You don't need a loop. This can be handy if you want find to look at a subset of your subdirectories.

Upvotes: 5

Gilles Quénot
Gilles Quénot

Reputation: 185720

Try doing this :

find {Failed,Loaded,ToLoad} -name 'file'

if {Failed,Loaded,ToLoad} are really some dirs.

Upvotes: 12

dogbane
dogbane

Reputation: 274828

The syntax of your for-loop is incorrect.

It should be:

for f in Failed Loaded ToLoad
do
    find "$f" -name 'file'
done

But you don't need a loop. It can simply be done like this:

find Failed Loaded ToLoad -name 'file'

Upvotes: 14

Related Questions