How to get human readable file size on Mac (/*BSD) terminal
Getting file size from OSX terminal is a pain. Actually it's a pain in all BSD variants.
We normally use ls -sh on Linux derivatives. But this command on Mac doesn't return a human readable value.
Alternatively I was using du tool for a long time. du -sh/du -h gives a nice human readable output. As a bonus point, it also measures size of directories.
But one drawback of this command is, it doesn't support tab auto completion. What I mean is after typing du -h and pressing tab won't suggest or complete files/directories in the current directory!
I was tweaking around today, and came up with a small solution. I also shortened the command only to dh. Only for checking files size du -h is a veery looong command for me.
Here is the snippet I wrote in my .zshrc file, and did the trick. It should also work on .bashrc as well.
1 2 3 | function dh() {du -h $1;} function _dh() {_files $PWD -/;} compdef _dh dh |
Save it to your rc file and reload the terminal. Hit dh and Tab, see the magic happen.
Comments
Leave a Comment