Issue with Find Command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Issue with Find Command
# 1  
Old 12-03-2010
Issue with Find Command

Hi All,

I'm a bit new to Linux environment, moderately okay when it comes to Unix AIX. I'm facing an issue while trying to run a simple find command:

Code:
 
$ for file in `find . -name *.*`
> do
> ls $file
> done

This is throwing the following error:
Quote:
find: paths must precede expression
Usage: find [-H] [-L] [-P] [path...] [expression]
Strangely, a few minutes back, this loop was running perfectly fine
Code:
 
for file in `find . -name *.*`
> do
> A=`lsof $file |wc -l`
> if [ $A -gt 1 ] ; then
> echo "File being skipped as it is still being uploaded"
> else
> echo "File may be copied"
> fi
> done
File may be copied

Is there some PATH level setting that I need to do. Need to get this issue sorted soon.

Regards,
Sriram
# 2  
Old 12-03-2010
write full path.

Quote:
for file in `find /full/path -name *.*`
instead of

Quote:
for file in `find . -name *.*`
R0H0N
# 3  
Old 12-03-2010
you need to quote when using regular exp.
Code:
find . -name '*.*'

# 4  
Old 12-03-2010
Yes,

The quoting helped. Thanks so much..

Regards,
Sriram
# 5  
Old 12-03-2010
I think that michaelrozar17 is correct in that you need to quote the expression, but may I ask why "*.*" Do you specifically need files containing a full stop? if not, just a single asterix will suffice or even not specify it, then it matches every file anyway.

It might also be sensible to grow your find to:
Code:
for file in `find . -type f`

... so that you only get files, unless you don't mind getting every directory, link, pipe etc. If you have submounted filesystems, you can exclude them by adding
-xdev or -mount depending on your operating system.




Robin

Last edited by rbatte1; 12-03-2010 at 07:45 AM.. Reason: Added section to look for files on and marker to search only current filesystem.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Find command issue

Hi Guys, I have a file called error.logs. am just trying to display the content in the file which was modified last 1 day. I tried below command but it doesnt give the proper output. find /u/text/vinoth/bin "error.logs" -mtime -1 -exec cat {} \; >> mail.txt Any help is much... (21 Replies)
Discussion started by: Vinoth Kumar G
21 Replies

2. Shell Programming and Scripting

Issue in Find and mv command

Hi I am using the below code to find mv the files. Files are moving to the Target location as expected but find is displaying some errors like below. find ./ -name "Archive*" -mtime +300 -exec mv {} /mnt/X/ARC/ \; find: `./Archive_09-30-12': No such file or directory find:... (6 Replies)
Discussion started by: rakeshkumar
6 Replies

3. Shell Programming and Scripting

Find command issue

Guys, Here is my requirement.. Sample.cfg file="*log.gz *txt.gz" sample.sh #!/bin/sh . $HOME/Sample.cfg find . -name "$file" -mtime +20 -exec ls -la {} \; Its not finding the given *log.gz and txt.gz files. Could anyone please help me? (8 Replies)
Discussion started by: AraR87
8 Replies

4. Shell Programming and Scripting

Performance issue while using find command

Hi, I have created a shell script for Server Log Automation Process. I have used find xargs grep command to search the string. for Example, find -name | xargs grep "816995225" > test.txt . Here my problem is, We have lot of records and we want to grep the string... (4 Replies)
Discussion started by: nanthagopal
4 Replies

5. Linux

find command issue

Hi, I am not root user. I am trying to find the file which has contains pattern "fvsfile" in root directory. If i run the find cmd then i got permission denied and all the files are listed include pattern files. i cant get file name yet find . print | xargs grep -i "fvsfile" I want... (2 Replies)
Discussion started by: Mani_apr08
2 Replies

6. UNIX for Dummies Questions & Answers

Find command issue

I am currently using below command to get the 1st three characters of a file(PDM). Issue is, when i use find command in root dir, it finds all the files in sub dir also. How to limit the find command search to a given path only(ie: say only find file in apps/cmplus/datamigration/data path... (3 Replies)
Discussion started by: abhi_n123
3 Replies

7. Shell Programming and Scripting

Issue with Find command on Linux

Hi, I am issuing find command below mentioned ways but it givs different count. I don't understand the behaviour. Could any one have any clue? $ find . -mtime -5 -maxdepth 1 -exec ls -lrt {} \; | wc -l 169 $ find . -mtime -5 -maxdepth 1 | wc -l 47 $ find . -mtime -5 -maxdepth 1 | wc -l... (2 Replies)
Discussion started by: siba.s.nayak
2 Replies

8. UNIX for Dummies Questions & Answers

Extrange Find command Issue

Hi all, i'm new at shell scripting world... I'm working on a script for searching old files on a server, this scripts runs with a configuration file wich indicates where to search the files, the script should search for all files that are older than an x qty of days, and the only clue that i have... (9 Replies)
Discussion started by: juanklavera
9 Replies

9. UNIX for Dummies Questions & Answers

Issue with find command using links

Hi, Having a simple issue with find command on Sun. The command works fine if the variable is set to the actual filesystem but fails when the variable is set to a link which is pointing to the same filesystem. export DUMPDEST=/oradata1/exports/pbm - Set the variable ... (2 Replies)
Discussion started by: win_vin
2 Replies

10. Shell Programming and Scripting

An issue with find command.

Hi all, I have a shell script(ksh) which has the code as follows. ------------------ cd $mydir for i in `find ./ -type f -mtime +$k` do echo $i done ----------------------- And in $mydir , i have some files which have space in theie names like "Case att15". The out put of the... (6 Replies)
Discussion started by: rajugp1
6 Replies
Login or Register to Ask a Question