Automator Eject Action - OSStatus error -36

Solution 1:

If you are going use AppleScript to get a list of disks you want ejected, then simply use, e.g.:

tell application "Finder" to eject cleanListOfDisks

Then there is no need to pass cleanListOfDisks to a Run Shell Script action to then pass it to a Eject Disk action.


Here is how I'd code the Run AppleScript action and not use any other actions:

set listOfDisks to list disks
set doNotEjectDiskList to {"Macintosh HD", "VM", "home", "net", "Google Drive"}
set listOfDisksToEject to {}

repeat with thisDisk in listOfDisks
    if thisDisk is not in doNotEjectDiskList then
        copy contents of thisDisk to end of listOfDisksToEject
    end if
end repeat

tell application "Finder" to eject listOfDisksToEject