Displaying the Free Space of Each Disk
Like other Mac users, I have a
bunch of different volumes, which the Finder treats as separate
disks, on my desktop. It is nice to be able to monitor how much space
each one of these disks has left, since each of them inevitably fills
up with files and new apps. The Finder provides some simple tools to
display this data to the user. These include the
disk object, which has a free space property. This property returns the amount of space
that is left on the disk as integer bytes. So if
disk “MyDisk” only had 1024 bytes
left on it, then:
free space of disk "MyDisk"
would return 1024. You would have to enclose the latter code fragment
in a tell statement that targets the Finder,
because the Finder application knows about disk
objects and free space properties. This script,
which I call “GetFreeSpace,” gets a
list of all the disks and stores the
list in a dskList variable.
Since the Finder application class has disk
elements, you can get a list of all disks simply
by sending the disks command to the Finder. This
script gets each disk’s free
space in megabytes with the following code phrase:
((d's free space) / 1024 / 1024)
It adds this information to a mesg
string variable that is finally displayed to the
user when all of the free space and total space is computed. The
result is a dialog window that looks like Figure 14-4.
![]() |
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access
