NAME¶
dlocate - program to view debian package information
SYNOPSIS¶
dlocate [
OPTIONS] [
command] [
package... |
PATTERN...]
DESCRIPTION¶
dlocate is a fast alternative to dpkg for queries like `dpkg -L' and
`dpkg -S'
COMMANDS¶
- (none)
- List all records where either the package name or the filename matches
PATTERN.
Note that dlocate uses GNU grep, so normal regexp metacharacters need to be
taken into account or avoided by using the '-F' (Fixed String) grep
option.
For example, to search for `/usr/bin/[', you might try: dlocate
'/usr/bin/\[' or dlocate -F '/usr/bin/['
- -S
- List all records where only the filename matches PATTERN.
Note that dlocate uses GNU grep, so normal regexp metacharacters need to be
taken into account. Fixed String searches are incompatible with -S.
For example, to search for `/usr/bin/[', you need to type:
dlocate '/usr/bin/\['
- -l
- Regexp-enhanced emulation of `dpkg -l'. Shows all packages which match
package.
Internally this uses grep on a file containing the reformatted output of
'dpkg -l' (four fields separated by tabs; status, package-name, installed
version, short description) so it will return packages whose version or
short description matches, too.
Various flavours of regular expression are supported. For example, Extended
Regexp:
dlocate -l '^..[[:space:]]libc6'
or Perl Regexp:
dlocate -P -l '^..\slibc6'
Both of these will list all the packages whose names start with `libc6'.
Note that because of the difference between regular expressions and dpkg's
shell-style pattern matching, the output from dlocate -l is
occasionally different to the output from dpkg -l.
This is not a bug, regular expressions are far more flexible than shell
pattern matching. This is the way dlocate is supposed to run, but it may
require some knowledge of regular expressions to get the output you want.
- -k
- List package names of installed kernels and all related packages
- -K
- Detailed list of installed kernels and all related packages
- -L
- List all files in package.
- -s
- Print status of package.
- -ls
- `ls -ldF' of all files in package.
- -lsconf
- `ls -ldF' of conffiles in package.
- -conf
- List conffiles in package.
- -du
- `du -sck' of all files in package.
- -md5sum
- List md5sums (if any) of package.
- -md5check
- Check md5sums (if any) of package.
- -man
- List man pages (if any) in package.
- -lsman
- List full path/filenames of man pages (if any) in package.
- -lsbin
- List full path/filenames of executable files (if any) in package.
OPTIONS¶
- --filename-only
- Only output file names when searching for files
- --package-only
- Only output package names when searching for files
- -w, --word-regexp
- Select only those lines containing matches that form whole words. The test
is that the matching substring must either be at the beginning of the
line, or preceded by a non-word constituent character. Similarly, it must
be either at the end of the line or followed by a non-word constituent
character. Word-constituent characters are letters, digits, and the
underscore.
- -i, --ignore-case
- Ignore case distinctions in the PATTERN
- -E, --extended-regexp
- Interpret PATTERN as an extended regular expression. This is the
default.
- -F, --fixed-strings
- Interpret PATTERN as a list of fixed strings, separated by
newlines, any of which is to be matched.
- -G, --basic-regexp
- Interpret PATTERN as a basic regular expression.
- -P, --perl-regexp
- Interpret PATTERN as a Perl regular expression. This is considered
to be highly experimental within GNU grep and may warn of unimplemented
features.
- -h, -H, --help
- Produces a short help message and exits.
- -V, --version
- Display dlocate's version number and exit.
- -v, --verbose, --debug
- Produce verbose debugging output
FILES¶
- /etc/default/dlocate
- Configuration file with default options. Currently the only option is to
enable/disable gzip compression of /var/lib/dlocate/dlocatedb.
- /var/lib/dlocate/dlocatedb
- Plain text listing of all files belonging to all packages (optionally
compressed)
- /var/lib/dlocate/dpkg-list
- Listing of all packages known to dpkg.
This contains the reformatted output output of 'dpkg -l'. The file format is
four fields separated by tabs:
status [TAB] package-name [TAB] installed version [TAB] short description
EXAMPLES¶
To find which package `/usr/bin/[' belongs to:
dlocate '/usr/bin/\['
To view all man pages contained within the dpkg package:
man $(dlocate -man dpkg)
To purge kernel version 2.6.28.7 and all related module packages:
dlocate -k | grep -- -2.6.28.7 | xargs apt-get purge
To check the md5sums of the dlocate package:
dlocate -md5check dlocate
To use dpkg-repack to make a backup copy of all installed mythtv packages just
before upgrading them:
dlocate -l mythtv | grep '^.i' | awk '{print $2}' | xargs dpkg-repack
# dlocate -l mythtv | grep '^.i' | awk '{print $2}' | xargs dpkg-repack
dpkg-deb: building package `libmythtv-perl' in
`./libmythtv-perl_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv' in
`./mythtv_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-backend' in
`./mythtv-backend_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-common' in
`./mythtv-common_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-database' in
`./mythtv-database_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-doc' in
`./mythtv-doc_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-frontend' in
`./mythtv-frontend_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-perl' in
`./mythtv-perl_0.21.svn20090414-0.0_amd64.deb'.
dpkg-deb: building package `mythtv-status' in
`./mythtv-status_0.9.0-5_amd64.deb'.
dpkg-deb: building package `mythtv-themes' in
`./mythtv-themes_0.21-0.0_amd64.deb'.
dpkg-deb: building package `mythtvfs' in `./mythtvfs_0.5.2-2_amd64.deb'.
dpkg-deb: building package `python-mythtv' in
`./python-mythtv_0.21.svn20090414-0.0_amd64.deb'.
ENVIRONMENT VARIABLES¶
- COLUMNS
- Sets the number of columns dlocate should use when displaying
formatted text. Currently only used by -l. Values lower than 80 are
ignored.
SEE ALSO¶
dpkg(1),
update-dlocatedb(8),
grep(1) and
grep-dctrl(1).
AUTHOR¶
dlocate was written by Jim Pick <jim@pick.com> and Craig Sanders
<cas@taz.net.au>. dlocate is Free Software licensed under the GNU
General Public License.