ffindcmd recursively descends the directory hierarchy for each
pathname in the
pathname-list , seeking files that match a logical
expression written using the operators listed below.
USAGE
Operators In the descriptions, the argument
n is used as a decimal integer where
+ n means more than
n , - n means less than
n , and
n means exactly
n . All three maybe used if an integer argument is needed.
-name filename
True if the
filename argument matches the current file name.
Shell argument syntax can be used if escaped (watch out for
[ ", " ? " and " * ")."
-prune
Always yields true. Has the side effect of pruning the search
tree at the file. That is, if the current path name is a directory,
ffindcmd will not descend into that directory.
-type c
True if the type of the file is
c , where
c is one of:
d
for directory
f
for plain file
-size n
True if the file is
n blocks long (512 bytes per block).
If
n is followed by a
c , the size is in characters.
-time n
True if the file has been accessed/modified/changed in
n days.
-exec command
True if the executed
command returns a zero value as exit status.
The end of
command must be punctuated by an escaped semicolon.
A command argument
{} is replaced by the current pathname.
-ok command
Like
-exec except that the generated command is written on
the standard output, then the standard input is read
and the command executed only upon response
y .
-print
Always true; the current pathname is printed.
-ls
Always true;
prints current pathname together
with its associated statistics.
These include
size in blocks (512 bytes),
protection mode,
number of hard links,
user,
group,
size in bytes,
and modification time.
Note: formatting is done internally,
without executing the
fls program.
-newer file
True if the current file has been modified more recently than the
argument
filename .
( expression )
True if the parenthesized
expression is true.
Note: Parentheses are special to the shell and must be escaped.
! primary
True if the
primary is false
is the unary
not operator).
primary1 [
-a ]
primary2 True if both
primary1 and
primary2 are true.
The
-a is not required. It is implied by the juxtaposition of two
primaries.
True if either
primary1 or
primary2 is true
or operator).
ffindcmd will perform
csh file name globbing based on file and directory information
obtained from the FSP database.
Since user's command shells generally cannot do the proper globbing for
this program, it is recommended that user defines a shell alias or
function to turn off command shell globbing before running this program.
csh example:
alias ffind \(set noglob\; exec ffindcmd \!\*\)
EXAMPLE
To find all the files called
intro.ms starting from the current
directory:
To recursively print all files names in the current directory and below,
skipping the contents of
SCCS directories, but printing out the
SCCS directory name:
There seems to be a problem using an alias as command to execute.
But since there is no globbing performed on the pathname
the original FSP commands may be used instead.