Groovy 2.1 adds the method
File objects. If the
File object is a directory then the total size of all files is calculated. Notice this method will go recursively through all subdirectories so it might take some time before the method returns. If we invoke the method on a
File object that is not a directory an
IllegalArgumentException is thrown.
def sampleDir = new File('sample') def sampleDirSize = sampleDir.directorySize() println sampleDirSize // Outputs size in bytes, eg. 130615981
Using Groovy from the command-line we can easily get the directory size like this:
$ groovy -e "println new File('.').directorySize()"
Written with Groovy 2.1