Web | This Site

Unix for Beginners
Unix Shell Programming
Advanced Unix
Unix Useful References
Unix Useful Resources
Selected Reading
© 2011 TutorialsPoint.COM

| Home |  | References |  | Discussion Forums |  | About TP

# 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 file’s permissions.
`-type X` | The file’s type matches perl’s `-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 file’s group is GROUP.
`-nouser` | True if file’s owner is not in password database.
`-nogroup` | True if file’s group is not in group database.
`-inum INUM` | True file’s inode number is INUM.
`-links N` | True if (hard) link count of file matches N (see below).
`-size N` | True if file’s 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 file’s 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 perl’s 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 user’s 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

Advertisement

Online Image Processing

Indian Baby Names