$ sudo mv /tmp/eee Downloads/ mv: failed to preserve ownership for 'Downloads/eee': Invalid argument 'Downloads/eee': Invalid argument
This is a wrong error message. The user didn't give an argument. Not only are you are telling the user that they gave an invalid argument, you don't even tell them what it was. Just like if you are charged with a crime, and the prosecutor doesn't even need to produce any evidence. Yes we know what causes this, https://lists.gnu.org/archive/html/coreutils/2015-04/msg00080.html I'm just saying you need to make better error messages. When you say improper argument, you are actually talking about how an internal part of coreutils is calling another internal part of coreutils improperly. I.e., internal error! I am not saying you need to change this to make it work. All I am saying is you need to give proper error messages, saying the whole problem. I am not saying you need to fix the problem. Just tell the user what is actually going on, without them needing strace(1). Yes I know what is going on. Don't tell me. Tell all users in a better error message. Thanks.
