Sponsored Content
Top Forums Shell Programming and Scripting This find command could have got me fired Post 302914200 by Don Cragun on Friday 22nd of August 2014 02:00:19 PM
Old 08-22-2014
Quote:
Originally Posted by omega3
Yes.
Code:
find <SearchstartLocation> -name <pattern>

is the preferred syntax.

Alternatively you could use
Code:
find /path/pattern

It seems to search only within the specified directory (depth=1 ). So it is safe too

Example

Code:
# touch /u05/xyz.fooo
#
#
# find /u05/*.fooo -print
/u05/xyz.fooo
#
#

The below search which starts in / directory doesn't find the file xyz.fooo as it is within /u05 directory

Code:
# find /*.fooo -print
find: `/*.fooo': No such file or directory
#
#
#
# touch /abc.fooo
#
# find /*.fooo -print
/abc.fooo

Not really... The standard synopsis for the find utility is:
Code:
find [−H|−L] path... [operand_expression...]

Find uses each given path operand as a root from which the operand-expression will be evaluated. If you name a regular file as a path operand, only that file will be evaluated (not the directory in which it resides). If you name a directory, it will evaluate that directory and all files in the file hierarchy rooted in that directory (unless part of the operand_expression limits the search.

When you invoke the command:
Code:
find /u05/*.fooo -print

the shell expands /u05/*.fooo to a list of matching files before find starts running. If you run the command:
Code:
find /u05 -name '*.fooo' -print

the find utility is expanding the *.fooo looking for matching files in and under /u05 and (in your example) prints:
Code:
/u05/xyz.fooo

Note that a common mistake for newbies is to invoke the above command without the quotes:
Code:
find /u05 -name *.fooo -print

If you're sitting in / when you execute that command in your example, it won't print anything. The shell will expand the *.fooo to abc.fooo (which you created in /) so the arguments find will see will be:
Code:
find /u05 -name abc.fooo -print

and /u05 contains xyz.fooo; but no file named abc.fooo.

And the command:
Code:
find /tmp /u05 "$HOME" -name '*.fooo'

with or without a -print primary, will print /u05/xyz.fooo and the names of any other files in /tmp and its subdirectories, /u05 and its subdirectories, and your home directory and its subdirectories with names that end with .fooo.
These 2 Users Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

command find returned bash: /usr/bin/find: Argument list too long

Hello, I create a file touch 1201093003 fichcomp and inside a repertory (which hava a lot of files) I want to list all files created before this file : find *.* \! -maxdepth 1 - newer fichcomp but this command returned bash: /usr/bin/find: Argument list too long but i make a filter all... (1 Reply)
Discussion started by: yacsil
1 Replies

2. Shell Programming and Scripting

Little bit weired : Find files in UNIX w/o using find or where command

Yes , I have to find a file in unix without using any find or where commands.Any pointers for the same would be very helpful as i am beginner in shell scritping and need a solution for the same. Thanks in advance. Regards Jatin Jain (10 Replies)
Discussion started by: jatin.jain
10 Replies

3. UNIX for Advanced & Expert Users

Read the entire output fired by ps command

Actually I want to display the entire output fired by ps command. My output gets trucated after 80 chars. Thus, i am not able to see the entire command running when i give a ps -eaf .... Does anyone know how do i display the entire output fired by ps command .. (i.e the command along with... (5 Replies)
Discussion started by: vinithepoo
5 Replies

4. 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

5. Shell Programming and Scripting

find: No match due to find command being argument

I am using csh and getting the error "find: No match." but I cannot figure out why. What I am trying to do is set the find command to a variable and then execute the variable as a command. I ran it through a debugger and it looks like $FIND is getting set but the find command can not actually be... (2 Replies)
Discussion started by: mst3k4l
2 Replies

6. Linux

Simplified find command to find multiple file types

Hi, I'm using the following command to find the multiple requierd file types and its working fine find . -name "*.pl" -o -name "*.pm" -o -name "*.sql" -o -name "*.so" -o -name "*.sh" -o -name "*.java" -o -name "*.class" -o -name "*.jar" -o -name "*.gz" -o -name "*.Z" -type f Though... (2 Replies)
Discussion started by: vickramshetty
2 Replies

7. Shell Programming and Scripting

How to use grep & find command to find references to a particular file

Hi all , I'm new to unix I have a checked project , there exists a file called xxx.config . now my task is to find all the files in the checked out project which references to this xxx.config file. how do i use grep or find command . (2 Replies)
Discussion started by: Gangam
2 Replies

8. Shell Programming and Scripting

Find multiple string in one file using find command

Hi, I want find multiple string in one file using find coomand. And keeping it in one variable.grep is not working. (5 Replies)
Discussion started by: vivek1489
5 Replies

9. UNIX for Dummies Questions & Answers

if statement in shell is not getting fired?

Hi, When i am executing the shell script, i am unable to get the dates values substituted for variables &mtd and &wsd. Please let me know where i am going wrong and please let me know how to get the values of these variables. I have tried all methods but the if condition is getting fired twice... (0 Replies)
Discussion started by: abhi_123
0 Replies

10. Solaris

Is it possible to find the seek rate of the find command in Solaris?

Hello, I am running some performance based tests on Solaris, and I was wondering how fast the "seeking" rate of Solaris is, or how fast Solaris can get information about files with the "find" command. Does anyone know what 'find' command I could run to traverse through my system to see the rate... (1 Reply)
Discussion started by: bstring
1 Replies
All times are GMT -4. The time now is 08:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy