]> git.tuebingen.mpg.de Git - adu.git/blobdiff - adu.ggo
compute_user_summary does not need any private data.
[adu.git] / adu.ggo
diff --git a/adu.ggo b/adu.ggo
index a46de259348a5adddbf91f451902a1b0d1e0b9f3..2964558ada5ba0c38153fd780d09db5d70c51b71 100644 (file)
--- a/adu.ggo
+++ b/adu.ggo
@@ -3,8 +3,7 @@
 # Licensed under the GPL v2. For licencing details see COPYING.
 
 package "adu"
 # Licensed under the GPL v2. For licencing details see COPYING.
 
 package "adu"
-version "0.0.2"
-purpose "advanced disk usage
+purpose "
 
 adu creates a database containing disk usage statistics of a given
 directory. It allows to query that database to quickly retrieve
 
 adu creates a database containing disk usage statistics of a given
 directory. It allows to query that database to quickly retrieve
@@ -25,7 +24,6 @@ details="
        configuration file. As usual, if an option is given both at
        the command line and in the configuration file, the command
        line option takes precedence.
        configuration file. As usual, if an option is given both at
        the command line and in the configuration file, the command
        line option takes precedence.
-
 "
 
 option "database-dir" d
 "
 
 option "database-dir" d
@@ -43,32 +41,13 @@ option "loglevel" l
 #~~~~~~~~~~~~~~~~~~
 "Set loglevel (0-6)"
 int typestr="level"
 #~~~~~~~~~~~~~~~~~~
 "Set loglevel (0-6)"
 int typestr="level"
-default="3"
+default="4"
 optional
 details="
        Log messages are always written to stderr while normal output
        goes to stdout. Lower values mean more verbose logging.
 "
 
 optional
 details="
        Log messages are always written to stderr while normal output
        goes to stdout. Lower values mean more verbose logging.
 "
 
-option "uid" u
-#~~~~~~~~~~~~~
-"user id(s) to take into account"
-string typestr="uid_spec"
-optional
-multiple
-details="
-       An uid specifier may be a single number, or a range of uids.
-       Example:
-
-       --uid 42    # only consider uid 42
-       --uid 42-   # only consider uids greater or equal than 42
-       --uid 23-42 # only consider uids between 23 and 42, inclusively.
-
-       This option may be given multiple times. An uid is taken into
-       account if it satisfies at least one --uid option.
-"
-
-
 option "paths" p
 #~~~~~~~~~~~~~~~
 "files to take into account"
 option "paths" p
 #~~~~~~~~~~~~~~~
 "files to take into account"
@@ -89,9 +68,9 @@ section "Modes"
 defgroup "mode"
 #==============
 groupdesc="
 defgroup "mode"
 #==============
 groupdesc="
-       adu may be started in one of two possible modes, each of which
-       corresponds to a different command line option. Exactly one
-       of these options must be given.
+       adu may be started in one of three possible modes, each of
+       which corresponds to a different command line option. Exactly
+       one of these options must be given.
 
 "
 required
 
 "
 required
@@ -107,13 +86,27 @@ details="
        that directory.
 "
 
        that directory.
 "
 
+groupoption "interactive" I
+#~~~~~~~~~~~~~~~~~~~~~~~~~~
+"activate interactive mode"
+group="mode"
+details="
+       In this mode, adu reads commands from stdin.  This makes it
+       possible to run different select queries without opening the
+       underlying osl database for each query (which is expensive).
+
+       In interactive mode, several subcommands are available, see
+       the end of this document.
+"
+
 groupoption "select" S
 #~~~~~~~~~~~~~~~~~~~~~
 "query a database previously created with --create"
 group="mode"
 details="
 groupoption "select" S
 #~~~~~~~~~~~~~~~~~~~~~
 "query a database previously created with --create"
 group="mode"
 details="
-       This option prints statistics about matching subdirectories to
-       stdout. The output depends on the other options, see below.
+       This option prints statistics about matching subdirectories
+       to stdout. The output can be customized by specifying select
+       options, see below.
 "
 
 ##############################
 "
 
 ##############################
@@ -140,7 +133,7 @@ option "one-file-system" x
 flag off
 dependon="create"
 details="
 flag off
 dependon="create"
 details="
-       Skip directories that are on different filesystems from the
+       Skip directories that are on different file systems from the
        one that the argument being processed is on.
 "
 
        one that the argument being processed is on.
 "
 
@@ -158,123 +151,20 @@ details="
        users. Decreasing the value causes adu to use slightly less memory.
 "
 
        users. Decreasing the value causes adu to use slightly less memory.
 "
 
-
 ##############################
 section "Options for --select"
 ##############################
 
 ##############################
 section "Options for --select"
 ##############################
 
-option "limit" L
-#~~~~~~~~~~~~~~~
-"Limit output"
-int  typestr="num"
-default="-1"
-optional
-dependon="select"
-details="
-       Only print num lines of output. If negative (the default),
-       print all lines.
-"
-
-option "size-unit" -
-#~~~~~~~~~~~~~~~~~~~
-"select output format for sizes"
-enum typestr="format"
-values="h","b","k","m","g","t"
-default="h"
-optional
-dependon="select"
-details="
-       Print sizes in the given unit: human-readable, bytes,
-       kilobytes (2^10), megabytes (2^20), gigabytes (2^30), terabytes
-       (2^40). The default is \"h\", i.e. human-readable.
-"
-
-option "count-unit" -
-#~~~~~~~~~~~~~~~~~~~~
-"select output format for counted values"
-enum typestr="format"
-values="h","n","k","m","g","t"
-default="h"
-optional
-dependon="select"
-details="
-       Print the number of files/directories in the given unit:
-       human-readable, number, number/10^3, number/10^6, number/10^12,
-       number/10^15. The default is to print numbers in human-readable
-       format.
-"
-
-option "print-base-dir" -
-#~~~~~~~~~~~~~~~~~~~~~~~~
-"whether to include the base-dir in the output"
-flag off
-details="
-       If this flag is given, all directories printed are prefixed
-       with the base directory. The default is to print paths relative
-       to the base dir.
-"
-
-option "no-headers" -
-#~~~~~~~~~~~~~~~~~~~~
-"supress descriptions for listings/tables"
-flag off
-dependon="select"
-details="
-       This is mostly useful to feed the output of adu to scripts.
-"
-
-option "global-list" -
-#~~~~~~~~~~~~~~~~~~~~~
-"how to print global directory listings"
-enum typestr="which"
-values="size","file_count","both","none"
-default="both"
-optional
-dependon="select"
-details="
-       By default adu prints two global directory listings: The
-       first prints the directory names ordered by the sum of the
-       sizes of the contained files while the second listing prints
-       them sorted by the number of files. This option can be used
-       to print only one or neither of these two listings.
-"
-
-option "no-global-summary" -
-#~~~~~~~~~~~~~~~~~~~~~~~~~~~
-"do not print the summary line"
-flag off
-dependon="select"
-
-option "user-list" -
-#~~~~~~~~~~~~~~~~~~~
-"how to print per-user directory listings"
-enum typestr="which"
-values="size","file_count","both","none"
-default="both"
-optional
-dependon="select"
-details="
-       Similar to the global directory listings mentioned above,
-       adu can print two directory listings per user. This option
-       controls which of the these should be printed.
-"
-
-option "no-user-summary" -
-#~~~~~~~~~~~~~~~~~~~~~~~~~~~
-"do not print the user summary table"
-flag off
-dependon="select"
-
-
-option "user-summary-sort" -
-#~~~~~~~~~~~~~~~~~~~~~~~~~~~
-"how to sort the user-summary"
-enum typestr="col_spec"
-values="name","uid","dir_count","file_count","size"
-default="size"
+option "select-options" s
+#~~~~~~~~~~~~~~~~~~~~~~~~~
+"Options for select mode"
+string typestr="<options>"
 optional
 dependon="select"
 details="
 optional
 dependon="select"
 details="
-       It is enough to specify the first letter of the column specifier,
-       e.g. \"--user-summary-sort f\" sorts by file count.
+       This option takes a string whose content is another set of
+       options as described below.  Select options may be specified
+       either directly in select mode, in which case you have use
+       quotes to prevent the select options from being interpreted
+       as adu options, or via the \"set\" command in interactive mode.
 "
 "