The pydf command displays the amount of used and available space on your file systems, just like df command, but in colors. The output format is completely customizable.
This is a little known tool (python script) that displays the amount of disk space available on the mounted filesystems, using different colours for different types of filesystems.
Install pydf
Use the apt-get command to install pydf under Debian / Ubuntu Linux:
$ sudo apt-get install pydf
Sample outputs:
Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: pydf 0 upgraded, 1 newly installed, 0 to remove and 13 not upgraded. Need to get 13.3 kB of archives. After this operation, 45.1 kB of additional disk space will be used. Get:1 http://debian.osuosl.org/debian/ squeeze/main pydf all 9 [13.3 kB] Fetched 13.3 kB in 0s (13.5 kB/s) Selecting previously deselected package pydf. (Reading database ... 224818 files and directories currently installed.) Unpacking pydf (from .../apt/archives/pydf_9_all.deb) ... Processing triggers for man-db ... Setting up pydf (9) ...
RHEL / CentOS / Fedora Linux users, use the yum command to install pydf (first enable EPEL repo as described here):
# yum -y install pydf
Sample outputs
Loaded plugins: product-id, protectbase, rhnplugin, subscription-manager Updating certificate-based repositories. 0 packages excluded due to repository protections Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package pydf.noarch 0:9-3.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ========================================================================= Package Arch Version Repository Size ========================================================================= Installing: pydf noarch 9-3.el6 epel 14 k Transaction Summary ========================================================================= Install 1 Package(s) Total download size: 14 k Installed size: 25 k Downloading Packages: pydf-9-3.el6.noarch.rpm | 14 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : pydf-9-3.el6.noarch 1/1 Installed products updated. Installed: pydf.noarch 0:9-3.el6 Complete!
FreeBSD user can use the port as follows:
# cd /usr/ports/sysutils/pydf/ && make install clean
Or, add the package using the pkg_add command:
# pkg_add -r pydf
How do I use pydf?
Simply type the command as follows:
$ pydf
Sample outputs:
$ pydf -a
Sample outputs:
To see human readable output i.e. show sizes in human readable format (e.g., 133K 2341M 2448G), enter:
$ pydf -h
The following option is same as -h, but use powers of 1000 not 1024:
$ pydf -H
To see information about inodes instead of blocks, enter:
$ pydf -i
Disable colourised output i.e. do not use colours:
$ pydf --bw
See quick demon of pydf command:
(Video 01: pydf command in action)
How do I customize pydf command colors?
Edit a file called /etc/pydfrc which is act as system wide main configuration file:
# vi /etc/pydfrc
You can use per-user configuration file ~/.pydfrc:
$ cp /etc/pydfrc ~/.pydfrc
$ vi ~/.pydfrc
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
- RSS feed or Weekly email newsletter
- Share on Twitter • Facebook • 12 comments... add one ↓
Category | List of Unix and Linux commands |
---|---|
File Management | cat |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
On CentOS 7, after running sudo yum install epel-release, I still couldn’t install pydf by running sudo yum install pydf. However I was able to install through pip by running:
yum install -y python-pip
sudo pip install pydf
Very recently, I wrote a tool in C that displays space usage using graphs and colors. It has also other capabilities such as html and TeX export of the data. Have a look at the wiki page for some screenshots and information.
Works on Linux, *BSD and OSX and is already in FreeBSD and OpenBSD ports and packaged in some Linux distro as well (Mageia, Debian, Gentoo,…).
You might want to give it a go. 😉
Nice tool. Thanks.
Tried installing pydf on FreeBSD 9 and found I had to alter the shebang line of the python script to get it to work properly. The script (/usr/local/bin/pydf) installs with
#!/usr/bin/python
and this needs to be changed to:
#!/usr/local/bin/python
Works well once adjusted.
I dislike the so-called “human-readable” format (it’s really “lossy abbreviation”), and pydf has nothing else. The best way of presenting large numbers is with thousands separators. That way the numbers themselves provide a graphic representation of their relative sizes while still being human readable. I wrote this wrapper for df:
http://cfajohnson.com/shell/scripts/dfc-sh
pydf is not a standard command; not all Linux distros have it.
It is available from http://kassiopeia.juls.savba.sk/~garabik/software/pydf/.
Nic little tool, thanks.
Is there also something like “pydu” or “kdirstat” for comand line?
Hi, the prints are diffrent like below;
it’s good to know about different thing thanks…
Nice little command that does one thing and does it well. Thanks.
You should mention NCDU, which i love most!
Sweet little command, didn’t know about this one. Thanks for the post!