is there a way to eject all external hard drives from the command line? (OS X)

Viewed 13508

Is there a way to eject all the mounted hard drive volumes on an OS X computer from the command line? Applescript is OK if I can wrap that in a shell script.

5 Answers

In Terminal try:

  • umount -a (All the filesystems described via getfsent(3) are unmounted.)
  • umount -A (All the currently mounted filesystems except the root unmounted.)

Fore more information see man umount.

Update:

Seems like you can also use this:

diskutil unmountDisk /dev/disk*

Didn't test it, though. If it doesn't work, try to use "unmount" instead of "unmountDisk".

Oh, I also found the eject argument (instead of unmountDisk). That might also be of interest.

Update 2:

diskutil eject /dev/* seems what you are looking for (see comments).

Related