find2perl - Unix, Linux Command
NAME
find2perl - translate find command lines to Perl code
SYNOPSIS
find2perl [paths] [predicates] | perl
|
DESCRIPTION
find2perl is a little translator to convert find command lines to
equivalent Perl code. The resulting code is typically faster than
running find itself.
paths are a set of paths where find2perl will start its searches and
predicates are taken from the following list.
Tag | Description |
! PREDICATE
|
Negate the sense of the following predicate. The ! must be passed as
a distinct argument, so it may need to be surrounded by whitespace and/or
quoted from interpretation by the shell using a backslash (just as with
using find(1)).
|
( PREDICATES )
|
Group the given PREDICATES. The parentheses must be passed as distinct
arguments, so they may need to be surrounded by whitespace and/or
quoted from interpretation by the shell using a backslash (just as with
using find(1)).
|
PREDICATE1 PREDICATE2
|
True if _both_ PREDICATE1 and PREDICATE2 are true; PREDICATE2 is not
evaluated if PREDICATE1 is false.
|
PREDICATE1 -o PREDICATE2
|
True if either one of PREDICATE1 or PREDICATE2 is true; PREDICATE2 is
not evaluated if PREDICATE1 is true.
|
-follow
|
Follow (dereference) symlinks. The checking of file attributes depends
on the position of the -follow option. If it precedes the file
check option, an stat is done which means the file check applies to the
file the symbolic link is pointing to. If -follow option follows the
file check option, this now applies to the symbolic link itself, i.e.
an lstat is done.
|
-depth
|
Change directory traversal algorithm from breadth-first to depth-first.
|
-prune
|
Do not descend into the directory currently matched.
|
-xdev
|
Do not traverse mount points (prunes search at mount-point directories).
|
-name GLOB
|
File name matches specified GLOB wildcard pattern. GLOB may need to be
quoted to avoid interpretation by the shell (just as with using
find(1)).
|
-iname GLOB
|
Like -name, but the match is case insensitive.
|
-path GLOB
|
Path name matches specified GLOB wildcard pattern.
|
-ipath GLOB
|
Like -path, but the match is case insensitive.
|
-perm PERM
|
Low-order 9 bits of permission match octal value PERM.
|
-perm -PERM
|
The bits specified in PERM are all set in files permissions.
|
-type X
|
The files type matches perls -X operator.
|
-fstype TYPE
|
Filesystem of current path is of type TYPE (only NFS/non-NFS distinction
is implemented).
|
-user USER
|
True if USER is owner of file.
|
-group GROUP
|
True if files group is GROUP.
|
-nouser
|
True if files owner is not in password database.
|
-nogroup
|
True if files group is not in group database.
|
-inum INUM
|
True files inode number is INUM.
|
-links N
|
True if (hard) link count of file matches N (see below).
|
-size N
|
True if files size matches N (see below) N is normally counted in
512-byte blocks, but a suffix of c specifies that size should be
counted in characters (bytes) and a suffix of k specifes that
size should be counted in 1024-byte blocks.
|
-atime N
|
True if last-access time of file matches N (measured in days) (see
below).
|
-ctime N
|
True if last-changed time of files inode matches N (measured in days,
see below).
|
-mtime N
|
True if last-modified time of file matches N (measured in days, see below).
|
-newer FILE
|
True if last-modified time of file matches N.
|
-print
|
Print out path of file (always true). If none of -exec, -ls,
-print0, or -ok is specified, then -print will be added
implicitly.
|
-print0
|
Like -print, but terminates with \0 instead of \n.
|
-exec OPTIONS ;
|
exec() the arguments in OPTIONS in a subprocess; any occurrence of {} in
OPTIONS will first be substituted with the path of the current
file. Note that the command rm has been special-cased to use perls
unlink() function instead (as an optimization). The ; must be passed as
a distinct argument, so it may need to be surrounded by whitespace and/or
quoted from interpretation by the shell using a backslash (just as with
using find(1)).
|
-ok OPTIONS ;
|
Like -exec, but first prompts user; if users response does not begin
with a y, skip the exec. The ; must be passed as
a distinct argument, so it may need to be surrounded by whitespace and/or
quoted from interpretation by the shell using a backslash (just as with
using find(1)).
|
-eval EXPR
|
Has the perl script eval() the EXPR.
|
-ls
|
Simulates -exec ls -dils {} ;
|
-tar FILE
|
Adds current output to tar-format FILE.
|
-cpio FILE
|
Adds current output to old-style cpio-format FILE.
|
-ncpio FILE
|
Adds current output to new-style cpio-format FILE.
|
Predicates which take a numeric argument N can come in three forms:
* N is prefixed with a +: match values greater than N
* N is prefixed with a -: match values less than N
* N is not prefixed with either + or -: match only values equal to N
|
SEE ALSO
find
|