
import commands
import subprocess
import time
import string

def scan_disks():
	DiskNames = commands.getoutput('diskutil list | grep "external, physical" | grep -o disk..')
	DiskName = DiskNames.rstrip()
	disk_list = DiskName.splitlines()

	if len(disk_list) == 0:
		return
	
	for i in disk_list:
		print "Unmounting external disk ", i
		subprocess.call(['diskutil', 'unmountDisk', str(i)])

scan_disks()
proc = subprocess.Popen(['diskutil','activity'],stdout=subprocess.PIPE)

while True:
	lines = proc.stdout.readline()
 	if lines == '':					
		break
	if "DiskPeek" in lines.rstrip() :
		continue

	scan_disks()
