Section: Mageia Package Management (1)
Updated: 2017-12-23
Page Index


urpmf - Finds the packages matching some conditions  


    urpmf [options] <pattern-expression>



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).  


Prints a help message and exits.
Prints the version number and exits.
Verbose mode. urpmf will emit various messages related to the parsing of media_info files for your media.
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.
Ignore case distinctions in the patterns that follow.
Honor case distinctions in the patterns that follow. This is the default behaviour.

Output Options

Do not print identical lines twice.
Print the name of the media in which the package has been found.
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.
Prints the architecture tag.
Prints the BuildHost tag.
Prints the BuildTime tag.
Prints the list of configuration files contained in the package. (Might be empty.)
Prints the Conflicts tags.
Prints the Description tag.
Prints the Distribution tag.
Prints the Epoch tag.
Prints package file names.
Prints the list of files contained in the rpm (this is the default if you specify no field).
Prints the Group tag.
Prints the License tag.
Prints package names.
Prints the Obsoletes tags.
Prints the Packager tag.
Prints the Provides tags.
Prints the Requires tag.
Prints the Size tag.
Prints the names of source rpms.
Prints the Recommends tag.
Prints the Summary tag.
Prints the packages' URL.
Prints the Vendor tag.

Advanced Query Options

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.
Binary AND operator, true if both expressions are true.
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.
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.
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.
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.


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)).  


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


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



See urpmi.files(5).  


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


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



Query Options
Output Options
Advanced Query Options
Media Selection
Database Options
Debugging Options