Table of Contents
xdu - display the output of "du" in an X window
du | xdu [options]
Xdu is a program for displaying a graphical tree of disk space
utilization as reported by the UNIX utility "du". The user can navigate
through the tree structure and change the order of the displayed information.
The window is divided up into several columns, each of which is one level
deeper in the directory hierarchy (from left to right). Boxes are drawn
for each directory. The amount of vertical space occupied by each box is
directly proportional to the amount of disk space consumed by it and all
of its children. The name of each directory and the amount of data are
displayed provided that there is enough space within its box. Any space
at the "bottom" of a box not covered by its children to the right represents
the space consumed by files in that directory (as opposed to space from
its children).
There are several command line options available. Equivalent
resources (if any) are shown with each option.
- +s
- (.showsize: true) display
sizes (the default).
- -s
- (.showsize: false) don't display sizes.
- -c num
- display
num columns.
- -a
- (.order: alpha) sorts display alphabetically.
- -ra
- (.order: ralpha)
sorts display reverse alphabetically.
- -n
- (.order: size) sorts display numerically
(largest first).
- -rn
- (.order: rsize) sorts display reverse numerically (smallest
first).
- -fg color
- (.foregound) determines the color of the text and lines.
- -bg color
- (.background) determines the color of the background.
- -rv
- reverse
video (for monochrome displays)
In addition to these the usual toolkit
options such as -rv, -font, -display, -geometry, are supported.
The
user can move up or down the tree by clicking the left mouse on a directory
box. If the left most box is selected, the display will move up one level
(assuming you are not already at the root). If any other box is selected,
it will be placed against the left edge of the window and the display will
be rescaled appropriately. At any time the middle mouse will bring you back
to the root. Clicking the right mouse will exit the program.
Several
keystroke commands are supported. Note that all sorting happens from the
current root node down, so it is possible to sort one subtree differently
than another by clicking into it, doing a sort, and going back up to the
parent.
- 1-9,0
- sets the number of columns in the display (0 = 10).
- a
- alphabetical
sort.
- n
- numerical sort (largest first).
- f
- first-in-first-out sort (this is the
order the data was read into the program).
- l
- last-in-first-out sort.
- r
- reverse
sense of sort.
- s
- toggle size display.
- h
- display a popup help window.
- i
- display
information about the current root node to standard out. The first line
shows the path within the tree, the total size from this node on down,
and the precentage that total represents of all of the data given to xdu.
Subsequent lines show the size and name information for all children of
this node in the order they are currently sorted in. This allows tiny directories
to be seen that otherwise could not be labled on the display, and also
allows for cutting and pasting of the information.
- /
- goto the root.
- q
- (or
Escape) exit the program.
All mouse and keyboard events trigger actions
so they can all be rebound by translations to suit the individual. The
action functions are:
- reset()
- goes to the root node.
- goto()
- moves down into
the directory currently under the mouse (and is thus probably only useful
bound to a mouse button).
- quit()
- exits the program.
- reorder(type)
- sorts the
display from the current root node down according to one of: alpha, ralpha
(reverse alphabetical), size (largest to smallest), rsize (smallest to
largest), first (as originally read in), last (opposite of original data),
reverse (reverse whatever sort mode is currently selected).
- size()
- toggles
size display on/off
- ncol(num)
- sets the number of columns to num.
- info()
- displays directory information as described in the KEYBOARD section.
- help()
- displays a popup help window.
As an example of rebinding these, you could
put the following in your resources file:
XDu*translations: #override\n\
<Key>X: reorder(reverse)\n\
<Btn3Down>: info()
to make the 'x' key reverse the current sort order and the right mouse button
print the directory information message.
The following resources
are supported with some sample values.
XDu*foreground: yellow
XDu*background: blue4
XDu*window.width: 600
XDu*window.height: 480
XDu*help*foreground: green
XDu*help*background: red4
XDu.ncol: 5
XDu.font: -*-helvetica-bold-r-normal--14-*
XDu.showsize: False
XDu.order: size
cd /usr/src
du > /tmp/du.out
xdu -n /tmp/du.out
On some machines keyboard input may not be accepted
by xdu until the mouse is moved out of and back into the window. I have
been told that putting the following in your resources file may fix this.
<window manager name>.FocusLenience: True
du(1)
Phillip C. Dykstra
<phil@arl.army.mil>
Table of Contents