tag 23737 notabug thanks On 06/09/2016 11:11 AM, Lemke, Michael ST/HZA-ZIC2 wrote: > With coreutils 8.25 on Cygwin I get this; > > P01104393> rm -i a\ b > rm: remove regular empty file 'a'$'\t''b'? > > What is this? The filename is 'a b' and not the nonsense rm outputs. > There is a tab character between a and b. Yes, and the string 'a'$'\t''b' is one way (of many) to write that literal string escaped in such a way that you can copy and paste it back into the shell to refer to the same file (assuming you have a shell new enough to support $'' quoting). This was an intentional behavior change in 8.25, hinted at in the NEWS file: ls now quotes file names unambiguously and appropriate for use in a shell, when outputting to a terminal. ... All utilities now quote user supplied arguments in error strings, which avoids confusing error messages in the presence of '\r' chars etc. although there has been discussion on this list about tweaking the heuristics to possibly get nicer looking quoting while still being unambiguous. If you don't like the default, you can set QUOTING_STYLE in your environment to go with a different quoting style. > > P01104393> rm --version > rm (GNU coreutils) 8.25 > Packaged by Cygwin (8.25-3) And since you are using Cygwin, you should also be reading the cygwin release announcements prior to blindly upgrading, where it was explicitly mentioned that this upstream behavior change was intentional and not a bug: https://cygwin.com/ml/cygwin-announce/2016-04/msg00024.html As such, I'm closing this in the coreutils bug database. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org