24 lines
596 B
Fish
24 lines
596 B
Fish
function ds --description 'calculate size of current or a given dir and sort by size'
|
|
switch (count $argv)
|
|
|
|
case 0
|
|
du -hsx * .[a-zA-Z0-9_]* 2> /dev/null | \
|
|
egrep '^ *[0-9.]*[MG]' | sort -n > /tmp/list
|
|
egrep '^ *[0-9.]*M' /tmp/list
|
|
egrep '^ *[0-9.]*G' /tmp/list
|
|
rm -rf /tmp/list
|
|
|
|
case 1
|
|
du -hx $argv .[a-zA-Z0-9_]* 2> /dev/null | \
|
|
egrep '^ *[0-9.]*[MG]' | sort -n > /tmp/list
|
|
egrep '^ *[0-9.]*M' /tmp/list
|
|
egrep '^ *[0-9.]*G' /tmp/list
|
|
rm -rf /tmp/list
|
|
|
|
case \*
|
|
echo "Only none or 1 argument is valid!"
|
|
return 1
|
|
|
|
end
|
|
end
|