diff options
author | Richard June <rjune@bravegnuworld.com> | 2001-01-22 22:35:38 +0000 |
---|---|---|
committer | Richard June <rjune@bravegnuworld.com> | 2001-01-22 22:35:38 +0000 |
commit | 6d0921cc0bb01b1d090285c487f8c1120dfa5d3a (patch) | |
tree | 97ed53aec9cbe3a3021804e9758abb3e04f05879 /utility.c | |
parent | 3b3f5c364a486dc2c081f0684a4315740f349be1 (diff) | |
download | busybox-w32-6d0921cc0bb01b1d090285c487f8c1120dfa5d3a.tar.gz busybox-w32-6d0921cc0bb01b1d090285c487f8c1120dfa5d3a.tar.bz2 busybox-w32-6d0921cc0bb01b1d090285c487f8c1120dfa5d3a.zip |
Add HUMAN_READABLE define for -m and -h support in du, df, and ls
Add support for -k in du, df, and ls(no define, it's for compatibliity with the GNU utils as bb does -k by default)
Fix bug #1084
Diffstat (limited to '')
-rw-r--r-- | utility.c | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -1770,6 +1770,27 @@ ssize_t safe_read(int fd, void *buf, size_t count) | |||
1770 | } | 1770 | } |
1771 | #endif | 1771 | #endif |
1772 | 1772 | ||
1773 | #ifdef BB_FEATURE_HUMAN_READABLE | ||
1774 | char *format(unsigned long val, unsigned long hr) | ||
1775 | { | ||
1776 | static char str[10] = "\0"; | ||
1777 | |||
1778 | if(val == 0) | ||
1779 | return("0"); | ||
1780 | if(hr) | ||
1781 | snprintf(str, 9, "%ld", val/hr); | ||
1782 | else if(val >= GIGABYTE) | ||
1783 | snprintf(str, 9, "%.1LfG", ((long double)(val)/GIGABYTE)); | ||
1784 | else if(val >= MEGABYTE) | ||
1785 | snprintf(str, 9, "%.1LfM", ((long double)(val)/MEGABYTE)); | ||
1786 | else if(val >= KILOBYTE) | ||
1787 | snprintf(str, 9, "%.1Lfk", ((long double)(val)/KILOBYTE)); | ||
1788 | else | ||
1789 | snprintf(str, 9, "%ld", (val)); | ||
1790 | return(str); | ||
1791 | } | ||
1792 | #endif | ||
1793 | |||
1773 | /* END CODE */ | 1794 | /* END CODE */ |
1774 | /* | 1795 | /* |
1775 | Local Variables: | 1796 | Local Variables: |