On 2023-03-31 14:32, Pádraig Brady wrote:
Perhaps we should support:
--no-clobber[={skip, fail (default)}]
so then users can at least easily change -n to --no-clobber=skip
to get the old behavior?
An alternative would be to augment the --update option to support:
--update[={none, older (default)}]
where --update=none would be the equivalent of the old -n behavior.
The latter sounds a bit better but I suppose either would work. We could
generalize it a bit further, e.g.:
--skip-diagnose[={yes,no}]
Whether to diagnose a copying action being skipped.
--skip-fail[={yes,no}]
Whether exit status should be 1 when skipping a copying action.
Presumably similar options would apply to ln and mv.
All these extra options might be overkill, though.
Perhaps we should also diagnose files skipped in the -n fail case,
to make it easier for users to see what the issue is.
FreeBSD cp -n doesn't diagnose, and GNU cp -n has never diagnosed, so
it's probably better to leave sleeping dogs lie.