3 "users to take into account"
4 string typestr="user_name"
8 This option may be given multiple times in which case all given
9 user names are considered admissible. See also --uid below.
14 "user id(s) to take into account"
15 string typestr="uid_spec"
18 An uid specifier may be a single uid, a range of uids,
19 or a comma-separated list of single uids or ranges.
25 Only consider uids greater or equal than 42:
28 Only consider uids between 23 and 42, inclusively:
31 Consider uids 23-42, 666-777 and 88:
32 --uid 23-42,666-777,88
34 If no --user option is given and also --uid option is not given
35 (the default), all users are taken into account.
45 Only print num lines of output. If negative (the default),
51 "suppress descriptions for listings/summaries"
54 This is mostly useful to feed the output of adu to scripts.
57 option "select-mode" m
58 #~~~~~~~~~~~~~~~~~~~~~
59 "How to print the results of the query"
61 values="global_list","global_summary","user_list","user_summary"
65 global_list: List of directories, regardless of owner.
66 global_summary: Only print totals.
67 user_list: Print a list for each admissible uid.
68 user_summary Print totals for each admissible uid.
73 "how to sort the user list or the global list"
75 values="size","file_count"
79 This option is ignored if select-mode is neither \"user_list\", nor
85 "file to write output to"
90 If empty, or not given, use stdout. The following conventions
91 cause the output to be written differently:
93 An output file name of \"-\" means stdout.
95 \"path\" may be prepended by '>' which instructs adu to
96 truncate the output file to length zero. If \"path\" does
97 not start with '>' and \"path\" already exists, the select
98 query is being aborted. Otherwise, \"path\" is created and
99 output is written to \"path\".
101 If the first two characters of \"path\" are '>', the output
102 file (given by removing the leading \">>\" from \"path\")
103 is being opened in append mode. It is no error if the output
104 file does not exist but, as above, the output file name \">>\"
105 is considered invalid.
107 If the first character of \"path\" is '|', a pipe is created
108 and the rest of \"path\" is being executed with its standard in
109 redirected to the reading end of the pipe. The output of adu
110 is written to the writing end of the pipe. Again, specifying
111 only \"|\" is considered invalid and causes an error.
114 option "user-summary-sort" -
115 #~~~~~~~~~~~~~~~~~~~~~~~~~~~
116 "how to sort the user-summary"
117 enum typestr="col_spec"
118 values="name","uid","dir_count","file_count","size"
122 It is enough to specify the first letter of the column specifier,
123 e.g. \"--user-summary-sort f\" sorts by file count.
126 option "print-base-dir" -
127 #~~~~~~~~~~~~~~~~~~~~~~~~
128 "whether to include the base-dir in the output"
131 If this flag is given, all directories printed are prefixed
132 with the base directory. The default is to print paths relative
138 "How to format the output"
139 string typestr="<format_string>"
143 A string that specifies how the output of the select query is
144 going to be formated. Depending on the chosen select-mode,
145 several conversion specifiers are available and a different
146 default value for this option applies.
148 adu knows four different types of directives: string, id,
149 count and size. These are explained in more detail below.
151 The general syntax for string and id directives is %(name:a:w)
152 where \"name\" is the name of the directive, \"a\" specifies
153 the alignment and \"w\" is the width specifier which allows
154 to give a field width.
156 The alignment specifier is a single character: Either \"l\",
157 \"r\", or \"c\" may be given to specify left, right and
158 centered alignment respectively. The with specifier is a
159 positive integer. Both \"a\" and \"w\" are optional.
161 A string directive supported by adu is \"dirname\" which is
162 substituted by the name of the directory. It is available
163 if either user_list or global_list mode was selected via
167 Print dirname without any padding:
171 Center dirname in a 20 chars wide field:
175 The other two types of directives, count and size, are used
176 for numbers. The syntax for these is %(name:a:w:u). The \"a\"
177 and the \"w\" specifier have the same meaning as for the string
178 and id directives. The additional \"u\" specifier selects a unit
179 in which the number that corresponds to the directive should
180 be formated. All three specifiers are optional.
182 Possible units are the characters of the set \" bkmgtBKMGT\"
183 specifying bytes, kilobytes, megabytes, gigabytes and
184 terabytes respectively. The difference between the lower and
185 the upper case variants is that the lower case specifiers
186 select 1024-based units while the upper case specifiers use
189 The whitespace character is like \"b\", but a space character
190 is printed instead of a unit.
192 Two more characters \"h\" and \"H\" (human-readable) are also
193 available that choose an appropriate unit depending on the
194 size of the number being printed.
196 An asterisk prepended to the unit specifier prevents the
197 unit from being printed. This is useful mainly for feeding
198 the output of adu to scripts that do not expect units.
200 In order to print a percent sign, use \"%%\". Moreover, adu
201 understands \"\\n\" and \"\\t\" and outputs a newline and a
202 tab character for these combinations respectively.
205 Print size in gigabytes right-aligned:
208 As before, but use 5 char wide field:
211 As before, but suppress trailing \"G\":
215 The following list contains all directives known to adu,
216 together with their types, and for which modes each of
219 pw_name (string): user name. Available for user_list
222 uid (id): user id. Available for user_list and
225 files (count): number of files. Available everywhere.
227 dirname (string): name of the directory. Available
228 for user_list and global_list.
230 size (size): total size/ directory size. Available
233 dirs (count): number of directories. Available
234 for user_summary and global_summary.