feeding filenames to find command

Hi,

I am having set of files whose names are stored in a file say "filelist.txt"
Now, I want to find all files contained in "filelist.txt" from my parent directory.

Is there any way to let find command understand "filelist.txt" just like we have option -f in awk.

I donot want to run a loop over my filelist and find one file at a time.

Please help.

Option 1: Write a loop that will create a string of '-o -name ...' tests to feed to find
Option 2: find . -type f -print | grep -f filelist.txt

Thanks pludi for ur reply but -
option 1 - it is very cumbersome when filelist is long.
option 2- it is very slow process ( performance wise).

Can't we tell this to find command in a direct manner ...?

No. Although I don't see how the complexity of Option 1 is, in any way, influenced by the length of the file list. Once you've got it it shouldn't matter if the list has 5 or 5000 entries (except if your shell complains that the argument list is too long)

Perhaps you need to explain what you are trying to do because a find of a list of files then it will only list those that exist which could be done by:

while read TESTFILE; do
  if [ -f "${TESTFILE}" ]; then
    echo ${TESTFILE}
  fi
done < filelist.txt

(The speech marks around the -f "${TESTFILE}" enable the script to handle filenames with spaces in (Windoze, pah!)).

?