Force Empty Trash Can on macOS
If you have just transferred over to Mac, the first problem likely to notice is deleting files. With the migration-related apps running in the background, file permissions can get wacky easily. Any times file systems or file permissions are being modified, you can encounter this issue again. While this problem is less frequent since California-based Mac names, let us assume for a moment you have a reason not want to reboot your computer and have encountered such an issue.
The symptoms related to this issue are following. If the Finder produces an error message -8003 or says the file is still in use, you are most likely encountering the issue I described. Same can apply to the external drives.
Simply run the following command on Terminal, and this will forcefully empty the trash.
Empty Trash on Startup Disk: sudo rm -rf ~/.Trash
If you are on the external drive, replace the bracketed part with the path to the volume by dragging volume icon on to Terminal window, and run the code.
Empty Trash on External Drive: sudo rm -rf [Volume Path]/.Trashes
Beginning with El Capitan, macOS automatically repairs file permission errors behind the scene; so running repair file permission from Disk Utility is no longer an option. You can still run First Aid, if you insist.
Running the codes will empty the Trash, but remember to reboot your computer afterward at your convenience. While the error itself is unlikely to affect your entire computer, —if, of course, the deleted file was not system critical— privilege related errors tend to keep spawning until you restart a computer, even if Finder says you have a total access to the file.