On 8/19/21 1:43 PM, Krzysztof Żelechowski wrote: > The command { gzip b; } fails because it would compress [a] without renaming > it. > The command { gzip -k b; } would not compress [a], so there is no reason to > fail. There is a safety reason to fail. A naive user might do this: gzip -k b && gzip -cd b.gz >b which would trash the hard-linked file as well. There's a similar safety issue with symbolic links: $ ln -s a b $ touch a $ gzip -k b && gzip -cd b.gz >b gzip: b: Too many levels of symbolic links where gzip's failure prevents the naive user from trashing the linked-to file. Of course one can use -f to go ahead and compress anyway. Similar diagnostics say "file ignored" or "ignored", and that is clearer than saying "unchanged", so I installed the attached patch.