summaryrefslogtreecommitdiff
path: root/cmdline
diff options
context:
space:
mode:
authorArch Librarian <arch@canonical.com>2004-09-20 16:55:20 +0000
committerArch Librarian <arch@canonical.com>2004-09-20 16:55:20 +0000
commit7c1133fe4559da6bed3bb916660f5b408ffa4705 (patch)
tree12050c1ad2cb78a7295301ca438073a1ff4ad412 /cmdline
parenta3eaf9544039a9adfef159e8185f376f19b15c68 (diff)
downloadapt-7c1133fe4559da6bed3bb916660f5b408ffa4705.tar.gz
package name lister in apt-cache
Author: jgg Date: 1999-12-09 07:32:45 GMT package name lister in apt-cache
Diffstat (limited to 'cmdline')
-rw-r--r--cmdline/apt-cache.cc39
1 files changed, 38 insertions, 1 deletions
diff --git a/cmdline/apt-cache.cc b/cmdline/apt-cache.cc
index 80c15a749..227b13c96 100644
--- a/cmdline/apt-cache.cc
+++ b/cmdline/apt-cache.cc
@@ -1,6 +1,6 @@
// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: apt-cache.cc,v 1.41 1999/10/22 04:05:47 jgg Exp $
+// $Id: apt-cache.cc,v 1.42 1999/12/09 07:32:45 jgg Exp $
/* ######################################################################
apt-cache - Manages the cache files
@@ -610,6 +610,40 @@ bool ShowPackage(CommandLine &CmdL)
return true;
}
/*}}}*/
+// ShowPkgNames - Show package names /*{{{*/
+// ---------------------------------------------------------------------
+/* This does a prefix match on the first argument */
+bool ShowPkgNames(CommandLine &CmdL)
+{
+ pkgCache &Cache = *GCache;
+ pkgCache::PkgIterator I = Cache.PkgBegin();
+ bool All = _config->FindB("APT::Cache::AllNames","false");
+
+ if (CmdL.FileList[1] != 0)
+ {
+ for (;I.end() != true; I++)
+ {
+ if (All == false && I->VersionList == 0)
+ continue;
+
+ if (strncmp(I.Name(),CmdL.FileList[1],strlen(CmdL.FileList[1])) == 0)
+ cout << I.Name() << endl;
+ }
+
+ return true;
+ }
+
+ // Show all pkgs
+ for (;I.end() != true; I++)
+ {
+ if (All == false && I->VersionList == 0)
+ continue;
+ cout << I.Name() << endl;
+ }
+
+ return true;
+}
+ /*}}}*/
// ShowSrcPackage - Show source package records /*{{{*/
// ---------------------------------------------------------------------
/* */
@@ -676,6 +710,7 @@ bool ShowHelp(CommandLine &Cmd)
cout << " search - Search the package list for a regex pattern" << endl;
cout << " show - Show a readable record for the package" << endl;
cout << " depends - Show raw dependency information for a package" << endl;
+ cout << " pkgnames - List the names of all packages" << endl;
cout << endl;
cout << "Options:" << endl;
cout << " -h This help text." << endl;
@@ -712,6 +747,7 @@ int main(int argc,const char *argv[])
{'g',"no-generate","APT::Cache::NoGenerate",0},
{'a',"all-versions","APT::Cache::AllVersions",0},
{0,"names-only","APT::Cache::NamesOnly",0},
+ {0,"all-names","APT::Cache::AllNames",0},
{'c',"config-file",0,CommandLine::ConfigFile},
{'o',"option",0,CommandLine::ArbItem},
{0,0,0,0}};
@@ -729,6 +765,7 @@ int main(int argc,const char *argv[])
{"search",&Search},
{"depends",&Depends},
{"show",&ShowPackage},
+ {"pkgnames",&ShowPkgNames},
{0,0}};
CacheInitialize();