Visit Our UNIX and Linux User Community


Find command, -name by directory and subdirectory?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Find command, -name by directory and subdirectory?
# 1  
Old 08-28-2009
Find command, -name by directory and subdirectory?

Hi All,

I'm trying to use the find command to return matches for a directory and file.

For example, given the following directories:

/one/two/three/file1.txt
/one/three/two/file1.txt
/one/four/two/three/file1.txt

I'm expecting the following to be returned:

/one/two/three/file1.txt
/one/four/two/three/file1.txt

I've tried the following with no luck:
find / -name three/file1.txt
find / \( -name three-a -name file1.txt \)

Any way to get this accomplished using the find command? I don't want find going down each directory, so grep will not work.

Thanks!

Last edited by makodarear; 08-28-2009 at 07:49 PM..
# 2  
Old 08-28-2009
PHP

Code:
#!/bin/ksh
find /one/ -type f -name file1\.txt -print | while read FILENAME
do
       # Is the directory name above the filename "three" ?
       THREE1="`dirname ${FILENAME}`"
       THREE="`basename ${THREE1}`"
        if [ "${THREE}" = "three" ]
        then
               echo "${FILENAME}"
        fi
done

# 3  
Old 08-28-2009
Thanks Methyl, but I don't want find recursing through all directories and I ideally want this performed within the find command.

Quote:
Originally Posted by methyl
Code:
#!/bin/ksh
find /one/ -type f -name file1\.txt -print | while read FILENAME
do
       # Is the directory name above the filename "three" ?
       THREE1="`dirname ${FILENAME}`"
       THREE="`basename ${THREE1}`"
        if [ "${THREE}" = "three" ]
        then
               echo "${FILENAME}"
        fi
done

# 4  
Old 08-29-2009
Another approach where "find" only looks in the target directories:

Code:
find /one/two/three/ -type f -name 'file1.txt' -print
find /one/four/two/three/ -type f -name 'file1.txt' -print

# 5  
Old 08-30-2009
Methyl, I am looking for this to be performed in a single find command, as I will not have knowledge of directories which match the search criteria before hand.

Quote:
Originally Posted by methyl
Another approach where "find" only looks in the target directories:

Code:
find /one/two/three/ -type f -name 'file1.txt' -print
find /one/four/two/three/ -type f -name 'file1.txt' -print

# 6  
Old 08-30-2009
try this
Code:
find / -wholename "*three/file1.txt" -print

# 7  
Old 08-30-2009
(withdrawn)

Previous Thread | Next Thread
Test Your Knowledge in Computers #135
Difficulty: Easy
As of 2006, approximately five percent of the Linux kernel was written by Linus Torvalds himself
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Searching File in Directory and all Subdirectory and Delete

Hi All, My directory structure is like Directory1 SubDirectory1 SubDirectory2 SubDirectory3 I have main directories and subdirectories underneath. I want to write a shell script where I will be passing file name as a parameter, Now I want to find all the files in Directory1... (19 Replies)
Discussion started by: John William
19 Replies

2. UNIX for Advanced & Expert Users

Make a subdirectory the root directory

I have a series of configuration files to deliver to multiple unix environments (dev, test, bench, prod etc). However I don't to modify them for each environment. The files are text which currently contain this type of directory information IN=/DVT/ms/sas/reception/PIL_QPA_SID/GSPIN001... (5 Replies)
Discussion started by: clarcombe
5 Replies

3. Shell Programming and Scripting

Remove all files except the subdirectory(without pattern) in a directory

I used rm * and it deleted the files in the directory but gives and error message for unsuccessful subdirectory deletion. "rm: cannot remove 'DirectoryName': Is a directory" I dont want to explicitly get the above error. What are the modifications I have to do in the rm command? (3 Replies)
Discussion started by: duplicate
3 Replies

4. Shell Programming and Scripting

How can i find a word inside a file from a directory and it's subdirectory ?

Suppose i have a word "mail". I have to search this word in all files inside a directory and it's sub-directories. It will also search in all hidden directory and sub-directories. If it finds this word in any file it will list that file. How can i do this with perl/ruby/awk/sed/bash or... (9 Replies)
Discussion started by: cola
9 Replies

5. UNIX for Dummies Questions & Answers

How to move all files in a directory and subdirectory?

I'm trying to organize my MB Pro by moving all my jpeg files to a single folder from the desktop. There are some on the desktop that are not in any folder. I was at the command line and typed mv *.jpg "Jpeg files" but it only moved the files that were on the desktop, not any of the ones that... (3 Replies)
Discussion started by: Straitsfan
3 Replies

6. Shell Programming and Scripting

Sum of file size in directory / subdirectory

Hi , I am trying to write something to find the size of particular type of files in a directory & it's subdirectory and sum the size .. These types of file are found at directory level or its subdirectories level .. #!/bin/ksh FNAME='.pdf' S_PATH=/abc/def/xyz find $S_PATH -exec ls -lad... (4 Replies)
Discussion started by: Vaddadi
4 Replies

7. Shell Programming and Scripting

How to list directory and subdirectory?

Hi, I want to list all the directory and subdirectories under any directory. For eg. i am in a directory called A and want to check all directories under A. Output should be as below. /A /A/a1 /A/a1/a2 /A/b1 /A/c1/c2 A,a1,a2,b1,c1 and c2 all are directories.Just for Eg. Please... (7 Replies)
Discussion started by: anshu ranjan
7 Replies

8. UNIX for Dummies Questions & Answers

how to find a file named vijay in a directory using find command

I need to find whether there is a file named vijay is there or not in folder named "opt" .I tried "ls *|grep vijay" but it showed permission problem. so i need to use find command (6 Replies)
Discussion started by: amirthraj_12
6 Replies

9. Shell Programming and Scripting

Find files in directory and its subdirectory

I am writing a script which reads a file line by line and then assigns it to a variable like this 1090373422_4028715212.jpg. I have images with file name of this format in some other directory. In my script I want to assign variable with this file name and then find this filename in some other... (11 Replies)
Discussion started by: jyotib
11 Replies

10. Shell Programming and Scripting

How to calculate file's size in directory and subdirectory

Hi, I have written one script to calculate total space of all file in one directory, ignoring subdirectory, it works fine. Now, I've been trying to calculate all files which includes files in any subdirectories. I use recursive function to do this, but it can work only if there is only one... (4 Replies)
Discussion started by: KLL
4 Replies

Featured Tech Videos