The specification for "df" is as specified in the SUS but with the following differences as listed below.
Disk space is shown in 1K blocks by default, unless the environment variable POSIXLY_CORRECT is set, in which case 512-byte blocks are used.
If an argument is the absolute file name of a disk device node containing a mounted filesystem, df shows the space available on that filesystem rather than on the filesystem containing the device node (which is always the root filesystem)
include filesystems having 0 blocks
use SIZE-byte blocks
print sizes in human readable (e.g., 1K 234M 2G)
likewise, but use powers of 1000 not 1024
list inode information instead of block usage
limit listing to local filesystems
limit listing to local filesystems
like --block-size=1048576
do not invoke sync before getting usage info (default)
use the POSIX output
invoke sync before getting usage info
use the POSIX output
Same as the -P option as specified in SUS
invoke sync before getting usage info
This option is different from what is specified in the SUS.
limit listing to filesystems of type TYPE
print filesystem type
limit listing to filesystems not of type TYPE