GNU bug report logs - #75806
Trailing spaces; pattern "\s" before "[[:cntrl:]]" faulty

Previous Next

Package: grep;

Reported by: Andreas BROCKMANN <andreas.brockmann <at> diehl.com>

Date: Fri, 24 Jan 2025 14:50:02 UTC

Severity: normal

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

Full log


Message #22 received at 75806-done <at> debbugs.gnu.org (full text, mbox):

From: Brian Inglis <Brian.Inglis <at> SystematicSW.ab.ca>
To: 75806-done <at> debbugs.gnu.org
Cc: Andreas BROCKMANN <andreas.brockmann <at> diehl.com>, cygwin <at> cygwin.com,
 Paul Eggert <eggert <at> cs.ucla.edu>
Subject: Re: bug#75806: Trailing spaces; pattern "\s" before "[[:cntrl:]]"
 faulty
Date: Sat, 25 Jan 2025 13:42:02 -0700
On 2025-01-25 12:31, Paul Eggert via Cygwin wrote:
> On 2025-01-24 05:27, Andreas BROCKMANN via Bug reports for GNU grep wrote:
>> The 1st command below correctly reports trailing spaces, for Unix and Windows 
>> format files.
>> The 2nd one incorrectly reports all lines.
>>
>>    grep -sHn -i " [[:cntrl:]]*$" *.vhd
>>    grep -sHn -i "\s[[:cntrl:]]*$" *.vhd
> 
> I don't see a bug. The latter command is equivalent to:
> 
>     grep -Hins '[[:space:]][[:cntrl:]]*$' *.vhd
> 
> and if the input files use Microsoft CRLF format then [[:space:]] matches the CR 
> at the end of every line and [[:cntrl:]]* matches the empty string after the CR.
> 
> Possibly you need to use Unix LF format, or use the --text option, or something 
> like that.
> 
> Marking the bug as done.

IIRC even Cygwin dropped Windows text handling in coreutils, findutils, grep, 
sed, etc. about 2018 to be consistent with other POSIX platforms.

Use d2u/dos2unix or u2d/unix2dos in pipes to convert, or equivalent, such as
tr -d '\r', sed -e 's/\r//g', awk -e '{gsub(/\r/,"")'.

Cygwin users may be able to compensate by remounting the filesystem with a 
"text" mount option -o text or the equivalent in an /etc/fstab entry, but I am 
unsure if anyone has tested using that option nowadays.

-- 
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
                                -- Antoine de Saint-Exupéry




This bug report was last modified 119 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.