*mv: error message "Directory not empty" is confusing * description: when you try to move a directory to a location already containing a directory with the same name it would just write "mv: cannot move 'A' to 'B': Directory not empty"
first, this is technically a wrong error message because there is no requirement that the destination would be empty. the destination might as well be populated with some content, we just require that it would not contain a directory with the same name. second, the error message is confusing because it doesn't state that the problem is with the destination. One can think that the problem is actually with the source, and that the source directory has some kind of attribute that would require it to be empty prior to moving. I would suggest to change the error message to: "*a directory with the same name already exists at destination*" reproduction: $:rm -rf /tmp/node_modules $:mkdir -p proj1/node_modules $:touch proj1/node_modules/foo $:mkdir -p proj2/node_modules $:touch proj2/node_modules/bar $:mv proj1/node_modules /tmp $:mv proj2/node_modules /tmp mv: cannot move 'proj2/node_modules' to '/tmp/node_modules': Directory not empty