Here is a script I developed for Leopard. It does not delete anything. It puts trash items in a dated folder at the root of each volume. You can then examine them and easily delete as required. I have not tested this on later OSs but it may work. Paste the script into an open Terminal window and hit return. It should run and then restart the Mac.
Here is a technical description - don't paste this into Terminal.
# Useful for these situations and others: https://encrypted.google.com/search?num=100&newwindow=1&q=%22the+item%22+AND+%22 will+be+deleted+immediately%22
# Find every visible item in the Volumes directory and open shell
# Construct a distinctive time stamped name
# Change directory to the root of each volume in turn and perform the following four commands
# Rename .Trashes with the distinctive name
# Make it visible
# Change ownership of it and all subordinate items to the first administrator
# Change permissions of it and all subordinate items to owner read and write
# Close shell and perform a normal Finder restart
Here is the script:
cd /Volumes; sudo find . -maxdepth 1 ! -name '.*' -execdir sh -c '
mv .Trashes $t
chflags nohidden $t
chown -R 501 $t
chmod -R 700 $t
' ';' ; osascript -e 'tell application "Finder" to restart'