Provided by: ncdu_1.19-0.1_amd64 bug

NAME

       ncdu - NCurses Disk Usage

SYNOPSIS

       ncdu [options] dir

DESCRIPTION

       ncdu (NCurses Disk Usage) is a curses-based version of the well-known 'du', and provides a fast way to
       see what directories are using your disk space.

OPTIONS

   Mode Selection
       -h, --help
           Print a short help message and quit.

       -v, -V, --version
           Print ncdu version and quit.

       -f FILE
           Load  the  given  file, which has earlier been created with the "-o" option. If FILE is equivalent to
           "-", the file is read from standard input.

           For the sake of preventing a screw-up, the current version of ncdu will  assume  that  the  directory
           information  in  the  imported  file  does  not  represent  the filesystem on which the file is being
           imported. That is, the refresh, file deletion and shell spawning  options  in  the  browser  will  be
           disabled.

       dir Scan the given directory.

       -o FILE
           Export  all  necessary  information to FILE instead of opening the browser interface. If FILE is "-",
           the data is written to standard output.  See the examples section below for some handy use cases.

           Be warned that the exported data may grow quite large when exporting a  directory  with  many  files.
           10.000 files will get you an export in the order of 600 to 700 KiB uncompressed, or a little over 100
           KiB when compressed with gzip. This scales linearly, so be prepared to handle a few tens of megabytes
           when dealing with millions of files.

       -e, --extended, --no-extended
           Enable/disable  extended information mode. This will, in addition to the usual file information, also
           read the ownership, permissions and last modification time for each file. This will result in  higher
           memory usage (by roughly ~30%) and in a larger output file when exporting.

           When  using  the file export/import function, this flag will need to be added both when exporting (to
           make sure the information is added to the export), and when importing (to read this extra information
           in memory). This flag has no effect when importing a file that has been exported without the extended
           information.

           This enables viewing and sorting by the latest child mtime, or modified  time,  using  'm'  and  'M',
           respectively.

       --ignore-config
           Do not attempt to load any configuration files.

   Scan Options
       These  options affect the scanning progress, and have no effect when importing directory information from
       a file.

       -x, --one-file-system
           Do not cross filesystem boundaries, i.e. only count files and directories on the same  filesystem  as
           the directory being scanned.

       --cross-file-system
           Do  cross  filesystem  boundaries. This is the default, but can be specified to overrule a previously
           given "-x".

       --exclude PATTERN
           Exclude files that match PATTERN. The files will still be displayed by default, but are  not  counted
           towards the disk usage statistics. This argument can be added multiple times to add more patterns.

       -X FILE, --exclude-from FILE
           Exclude files that match any pattern in FILE. Patterns should be separated by a newline.

       --include-caches, --exclude-caches
           Include  (default)  or  exclude  directories  containing CACHEDIR.TAG.  The directories will still be
           displayed, but their contents will not be scanned or  counted  towards  the  disk  usage  statistics.
           <http://www.brynosaurus.com/cachedir/>

       -L, --follow-symlinks, --no-follow-symlinks
           Follow  (or  not) symlinks and count the size of the file they point to. As of ncdu 1.14, this option
           will not follow symlinks to directories and will count each symlinked file as  a  unique  file  (i.e.
           unlike how hard links are handled).  This is subject to change in later versions.

       --exclude-firmlinks, --follow-firmlinks
           (MacOS only) Exclude or follow firmlinks.

       --include-kernfs, --exclude-kernfs
           (Linux  only)  Include  (default)  or  exclude  Linux  pseudo  filesystems, e.g. /proc (procfs), /sys
           (sysfs).

           The complete list of currently known pseudo filesystems is:  binfmt,  bpf,  cgroup,  cgroup2,  debug,
           devpts, proc, pstore, security, selinux, sys, trace.

   Interface options
       -0  Don't give any feedback while scanning a directory or importing a file, other than when a fatal error
           occurs.  Ncurses  will  not  be  initialized until the scan is complete. When exporting the data with
           "-o", ncurses will not be initialized at all. This option is the default when exporting  to  standard
           output.

       -1  Similar  to  "-0", but does give feedback on the scanning progress with a single line of output. This
           option is the default when exporting to a file.

           In some cases, the ncurses browser interface which you'll see after the scan/import is  complete  may
           look  garbled  when  using  this option. If you're not exporting to a file, "-2" is probably a better
           choice.

       -2  Provide a full-screen ncurses interface while scanning a directory or importing a file. This  is  the
           only interface that provides feedback on any non-fatal errors while scanning.

       -q, --slow-ui-updates, --fast-ui-updates
           Change  the  UI  update  interval while scanning or importing. Ncdu will update the screen 10 times a
           second by default ("--fast-ui-updates"), this can be decreased to once every 2 seconds with  "-q"  or
           "--slow-ui-updates".  This feature can be used to save bandwidth over remote connections. This option
           has no effect when "-0" is used.

       --enable-shell, --disable-shell
           Enable or disable shell spawning from the browser. This feature is enabled by default when scanning a
           live directory and disabled when importing from file.

       --enable-delete, --disable-delete
           Enable or disable the built-in file deletion  feature.  This  feature  is  enabled  by  default  when
           scanning  a  live  directory and disabled when importing from file. Explicitly disabling the deletion
           feature can work as a safeguard to prevent accidental data loss.

       --enable-refresh, --disable-refresh
           Enable or disable directory refreshing from the browser. This feature  is  enabled  by  default  when
           scanning a live directory and disabled when importing from file.

       -r  Read-only  mode.  When  given once, this is an alias for "--disable-delete", when given twice it will
           also add "--disable-shell", thus ensuring that there is no way to modify the file system from  within
           ncdu.

       --si, --no-si
           List  sizes  using  base  10  prefixes,  that  is,  powers  of  1000 (KB, MB, etc), as defined in the
           International System of Units (SI), instead of the usual base 2 prefixes, that  is,  powers  of  1024
           (KiB, MiB, etc).

       --disk-usage, --apparent-size
           Select  whether to display disk usage (default) or apparent sizes. Can also be toggled in the browser
           with the 'a' key.

       --show-hidden, --hide-hidden
           Show (default) or hide "hidden" and excluded files. Can also be toggled in the browser with  the  'e'
           key.

       --show-itemcount, --hide-itemcount
           Show or hide (default) the item counts column. Can also be toggled in the browser with the 'c' key.

       --show-mtime, --hide-mtime
           Show or hide (default) the last modification time column. Can also be toggled in the browser with the
           'm' key. This option is ignored when not in extended mode (see "-e").

       --show-graph, --hide-graph
           Show  (default) or hide the relative size bar column. Can also be toggled in the browser with the 'g'
           key.

       --show-percent, --hide-percent
           Show (default) or hide the relative size percent column. Can also be toggled in the browser with  the
           'g' key.

       --sort COLUMN
           Change  the  default column to sort on. Accepted values are disk-usage (the default), name, apparent-
           size, itemcount or mtime. The latter only makes sense in extended mode, see "-e".

           The column can be suffixed with  -asc  or  -desc  to  set  the  order  to  ascending  or  descending,
           respectively. e.g. "--sort=name-desc" will sort by name in descending order.

       --enable-natsort, --disable-natsort
           Enable (default) or disable natural sort when sorting by file name.

       --group-directories-first, --no-group-directories-first
           Sort (or not) directories before files.

       --confirm-quit, --no-confirm-quit
           Require  a  confirmation before quitting ncdu. Very helpful when you accidentally press 'q' during or
           after a very long scan.

       --confirm-delete, --no-confirm-delete
           Require a confirmation before deleting a file or directory. Enabled by default, but can  be  disabled
           if you're absolutely sure you won't accidentally press 'd'.

       --color SCHEME
           Select  a color scheme. The following schemes are recognized: off to disable colors, dark for a color
           scheme intended for dark backgrounds and dark-bg for a variation of the dark color scheme  that  also
           works in terminals with a light background.

           The default is dark-bg unless the "NO_COLOR" environment variable is set.

CONFIGURATION

       Ncdu    can    be    configured    by    placing    command-line    options    in   "/etc/ncdu.conf"   or
       "$HOME/.config/ncdu/config". If both files exist, the system configuration will be loaded before the user
       configuration, allowing users to override options set in the system configuration. Options given  on  the
       command line will override options set in the configuration files. The files will not be read at all when
       "--ignore-config" is given on the command line.

       The  configuration  file  format  is simply one command line option per line. Lines starting with "#" are
       ignored. Example configuration file:

         # Always enable extended mode
         -e

         # Disable file deletion
         --disable-delete

         # Exclude .git directories
         --exclude .git

KEYS

       ?   Show help + keys + about screen

       up, down, j, k
           Cycle through the items

       right, enter, l
           Open selected directory

       left, <, h
           Go to parent directory

       n   Order by filename (press again for descending order)

       s   Order by filesize (press again for descending order)

       C   Order by number of items (press again for descending order)

       a   Toggle between showing disk usage and showing apparent size.

       M   Order by latest child mtime, or modified time. (press again for descending  order)  Requires  the  -e
           flag.

       d   Delete  the  selected  file  or  directory.  An  error message will be shown when the contents of the
           directory do not match or do not exist anymore on the filesystem.

       t   Toggle dirs before files when sorting.

       g   Toggle between showing percentage, graph, both, or none. Percentage is relative to the  size  of  the
           current directory, graph is relative to the largest item in the current directory.

       c   Toggle display of child item counts.

       m   Toggle display of latest child mtime, or modified time. Requires the -e flag.

       e   Show/hide  'hidden'  or  'excluded' files and directories. Please note that even though you can't see
           the hidden files and directories, they are still there and they are still included in  the  directory
           sizes.  If  you  suspect that the totals shown at the bottom of the screen are not correct, make sure
           you haven't enabled this option.

       i   Show information about the current selected item.

       r   Refresh/recalculate the current directory.

       b   Spawn shell in current directory.

           Ncdu will determine your preferred shell from the "NCDU_SHELL" or "SHELL" variable (in  that  order),
           or  will  call "/bin/sh" if neither are set.  This allows you to also configure another command to be
           run when he 'b' key is pressed. For example, to spawn the vifm(1) file manager instead  of  a  shell,
           run ncdu as follows:

             export NCDU_SHELL=vifm
             ncdu

           Ncdu  will  set the "NCDU_LEVEL" environment variable or increment it before spawning the shell. This
           variable allows you to detect when your shell is running from within ncdu, which  can  be  useful  to
           avoid  nesting  multiple  instances of ncdu. Ncdu itself does not (currently) warn when attempting to
           run nested instances.

       q   Quit

FILE FLAGS

       Entries in the browser interface may be prefixed by a one-character flag. These flags have the  following
       meaning:

       !   An error occurred while reading this directory.

       .   An error occurred while reading a subdirectory, so the indicated size may not be correct.

       <   File or directory is excluded from the statistics by using exclude patterns.

       >   Directory is on another filesystem.

       ^   Directory is excluded from the statistics due to being a Linux pseudo filesystem.

       @   This is neither a file nor a folder (symlink, socket, ...).

       H   Same file was already counted (hard link).

       e   Empty directory.

EXAMPLES

       To scan and browse the directory you're currently in, all you need is a simple:

         ncdu

       If you want to scan a full filesystem, your root filesystem, for example, then you'll want to use "-x":

         ncdu -x /

       Since  scanning  a  large directory may take a while, you can scan a directory and export the results for
       later viewing:

         ncdu -1xo- / | gzip >export.gz
         # ...some time later:

         zcat export.gz | ncdu -f-
       To export from a cron job, make sure to replace "-1" with "-0" to suppress any unnecessary output.

       You can also export a directory and browse it once scanning is done:


         ncdu -o- | tee export.file | ./ncdu -f-
       The same is possible with gzip compression, but is a bit kludgey:


         ncdu -o- | gzip | tee export.gz | gunzip | ./ncdu -f-
       To scan a system remotely, but browse through the files locally:


         ssh -C user@system ncdu -o- / | ./ncdu -f-
       The "-C" option to ssh enables compression, which will be very useful over slow  links.  Remote  scanning
       and  local  viewing has two major advantages when compared to running ncdu directly on the remote system:
       You can browse through the scanned directory on the local system without any network  latency,  and  ncdu
       does  not  keep the entire directory structure in memory when exporting, so you won't consume much memory
       on the remote system.

HARD LINKS

       Every disk usage analysis utility has its own way of (not) counting hard links.  There does not  seem  to
       be  any  universally  agreed  method  of handling hard links, and it is even inconsistent among different
       versions of ncdu. This section explains what each version of ncdu does.

       ncdu 1.5 and below does not support any hard link detection at all: each link is  considered  a  separate
       inode and its size is counted for every link. This means that the displayed directory sizes are incorrect
       when analyzing directories which contain hard links.

       ncdu  1.6  has  basic hard link detection: When a link to a previously encountered inode is detected, the
       link is considered to have a file size of zero bytes.  Its size is not counted again,  and  the  link  is
       indicated  in  the browser interface with a 'H' mark. The displayed directory sizes are only correct when
       all links to an inode reside within that directory. When this is not the case, the sizes may or  may  not
       be  correct,  depending  on  which  links  were  considered  as  "duplicate" and which as "original". The
       indicated size of the topmost directory (that is, the one specified on the  command  line  upon  starting
       ncdu) is always correct.

       ncdu  1.7  and later has improved hard link detection. Each file that has more than two links has the "H"
       mark visible in the browser interface. Each hard link is counted exactly  once  for  every  directory  it
       appears  in.  The  indicated  size of each directory is therefore, correctly, the sum of the sizes of all
       unique inodes that can be found in that directory. Note, however, that this may not always be same as the
       space that will be reclaimed after deleting the directory, as some inodes may still  be  accessible  from
       hard links outside it.

BUGS

       Directory  hard  links are not supported. They will not be detected as being hard links, and will thus be
       scanned and counted multiple times.

       Some minor  glitches  may  appear  when  displaying  filenames  that  contain  multibyte  or  multicolumn
       characters.

       All sizes are internally represented as a signed 64bit integer. If you have a directory larger than 8 EiB
       minus  one byte, ncdu will clip its size to 8 EiB minus one byte. When deleting items in a directory with
       a clipped size, the resulting sizes will be incorrect.

       Item counts are stored in a signed 32-bit integer without overflow detection.  If you  have  a  directory
       with more than 2 billion files, quite literally anything can happen.

       On  macOS  10.15  and  later,  running ncdu on the root directory without `--exclude-firmlinks` may cause
       directories to be scanned and counted multiple times. Firmlink cycles are currently (1.16) not  detected,
       so it may also cause ncdu to get stuck in an infinite loop and eventually run out of memory.

       Please  report  any  other  bugs  you  may find at the bug tracker, which can be found on the web site at
       https://dev.yorhel.nl/ncdu

AUTHOR

       Written by Yoran Heling <projects@yorhel.nl>.

SEE ALSO

       du(1)

ncdu-1.18.1                                        2023-03-05                                            NCDU(1)