Be smarter about determining whether the file is already gone

Per @drbrain's suggestion, this version only prints the failure
message if the file exists or if it has an unreadable or unexecutable
parent directory.