Provided by:
fsp_2.81.b24-2ubuntu2_i386
NAME
ffindcmd, ffind - find files by name or by other characteristics in FSP
database
SYNOPSIS
ffindcmd pathname-list expression
ffind pathname-list expression
DESCRIPTION
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 opera‐
tor).
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.
primary1 -o primary2
True if either primary1 or primary2 is true (-o is the
or operator).
ffindcmd will perform csh file name globbing based on file and direc‐
tory 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 pro‐
gram. csh example:
alias ffind \(set noglob\; exec ffindcmd \!\*\)
EXAMPLE
To find all the files called intro.ms starting from the current direc‐
tory:
example% ffind . -name intro.ms -print
./manuals/assembler/intro.ms
./manuals/sun.core/intro.ms
./manuals/driver.tut/intro.ms
./manuals/sys.manager/uucp.impl/intro.ms
./supplements/general.works/unix.introduction/intro.ms
./supplements/programming.tools/sccs/intro.ms
example%
To recursively print all files names in the current directory and
below, but skipping SCCS directories:
example% ffind . -name SCCS -prune -o -print
example%
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:
example% ffind . -print -name SCCS -prune
example%
To remove files named a.out or *.o that have not been accessed for a
week or more
example% ffind . \( -name a.out -o -name *.o \) -time +7 -exec frm {} \;
ENVIRONMENT
See fsp_env(7) for list of used environment variables.
fcatcmd(1), fcdcmd(1), fgetcmd(1), fgrabcmd(1), flscmd(1), fmkdir(1),
fprocmd(1), fput(1), frmcmd(1), frmdircmd(1), fver(1), fducmd(1),
fhostcmd(1), ffindcmd(1), fspd(1), fsp_prof(5)
BUGS
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.