URPMF(1)

NAME
urpmf - Finds the packages matching some conditions

SYNOPSIS
    urpmf [options] <pattern-expression>

DESCRIPTION
By default, urpmf outputs the list of the known packages that contain a file whose name or path was specified as an argument on the command-line. <pattern-expression> is the name or part of the name of the file you want to locate. Perl-style regular expressions are allowed. urpmf will then print a list of matching files, with their corresponding packages. By using options, you may format output differently, and search through other rpm tags. The default behaviour corresponds to the --files option; using other options makes urpmf search through other tags' contents.

Note that urpmf searches through the urpmi media (not in the system's rpm database -- for that you should use rpm(8) instead).

OPTIONS

--help
    Prints a help message and exits.

--version
    Prints the version number and exits.

--verbose
    Verbose mode. urpmf will emit various messages related to the parsing of media_info files for your media.

--wait-lock
    If the urpmi or rpm db is busy, wait until it is available

  Query Options

-l, --literal
    Match literally instead of interpreting the argument as a regular expression.

-i  Ignore case distinctions in the patterns that follow.

-I  Honor case distinctions in the patterns that follow. This is the default behaviour.

  Output Options

--uniq
    Do not print identical lines twice.

-m  Print the name of the media in which the package has been found.

-f  Print version, release and arch along with name of package. This modifies the effect of the --name option.

-F string
    Change field separator to string for the rest of the output line (it defaults to ':')

--qf format-string
    Specify a printf-like output format.

--arch
    Prints the architecture tag.

--buildhost
    Prints the BuildHost tag.

--buildtime
    Prints the BuildTime tag.

--conffiles
    Prints the list of configuration files contained in the package. (Might be empty.)

--conflicts
    Prints the Conflicts tags.

--description
    Prints the Description tag.

--distribution
    Prints the Distribution tag.

--epoch
    Prints the Epoch tag.

--filename
    Prints package file names.

--files
    Prints the list of files contained in the rpm (this is the default if you specify no field).

--group
    Prints the Group tag.

--license
    Prints the License tag.

--name
    Prints package names.

--obsoletes
    Prints the Obsoletes tags.

--packager
    Prints the Packager tag.

--provides
    Prints the Provides tags.

--requires
    Prints the Requires tag.

--size
    Prints the Size tag.

--sourcerpm
    Prints the names of source rpms.

--recommends
    Prints the Recommends tag.

--summary
    Prints the Summary tag.

--url
    Prints the packages' URL.

--vendor
    Prints the Vendor tag.

  Advanced Query Options

-e  Include code directly in the perl search expression. Use it with --debug to look at the generated perl code. In any cases, use it only if you know perl.

-a  Binary AND operator, true if both expressions are true.

-o  Binary OR operator, true if one expression is true.

!   Unary NOT, true if expression is false.

(   Left parenthesis to open a group expression.

)   Right parenthesis to close a group expression.

--debug
    Includes debugging output.

  Media Selection

--excludemedia medium1,...,mediumN
    Do not use the given media.

--media medium1,...,mediumN
    Select specific media to be used, instead of defaulting to all available media (or all update media if --update is used).

--sortmedia medium1,...,mediumN
    Sort the given media, substrings may be used to simplify grouping. This way, "media1" will be taken into account first, then "media2", and so on. Media which aren't listed are taken into account after the others.

--synthesis file
    Use the given synthesis file instead of urpmi db for searching packages.

--use-distrib directory
    Use the given distribution tree instead of urpmi db for searching packages.

--update
    Use only update media. This means urpmf will only search through media marked as update.

  Database Options

--urpmi-root directory
    Use the file system tree rooted for urpmi database and rpm install. Contrary to --root, the urpmi configuration comes from the rooted tree.

--wait-lock
    If the urpmi or rpm db is busy, wait until it is available

  Debugging Options

--env directory
    Use a different environment directly out of a bug report tarball.

FORMAT
The options to select tags (--arch, --buildhost and so on) control the output format of urpmf. If not explicitly specified somewhere else, the name of the rpm is printed first. Fields are separated by ":" until specified otherwise.

You can also use --qf for that. It takes a format string, where tags to be replaced are specified as %[-][number]tagname. The optional number indicates the length of the space-padding and the - character its justification (like in printf(3)).

EXPRESSIONS
The boolean operator switches allow you to construct complex expressions from regexps. Those expressions are then matched against the whole output line.

EXAMPLE
This command will list all "perl-Apache" modules, and list them along with the media in which they're been found, nicely indented:

    urpmf --qf '%-30name is found in media %media' perl-Apache

FILES
See urpmi.files(5).

SEE ALSO
urpmi.addmedia(8), urpmi.update(8), urpmi.removemedia(8), urpmi(8), urpmq(8), urpmi.files(5).

AUTHOR
Pascal Rigaux <pixel@mandriva.com> (original author and current maintainer), François Pons, Rafael Garcia-Suarez