sed - remove nul lines from file
Yuri Pankov
yuripv at gmx.com
Tue Nov 7 18:20:49 UTC 2017
On Tue, 7 Nov 2017 13:14:08 -0500, James B Byrne Via Freebsd-questions
wrote:
>
> On Tue, November 7, 2017 13:03, Yuri Pankov wrote:
>
>>
>> You want /d, not /g, to delete the *lines* which contain NUL symbols
>> (that's what your subject line said).
>>
>
> Sigh. Thank you. That works. However, it also deletes any line that
> has even one NUL in it regardless of the presence of other non-nul
> characters on the line.
>
> What I wish to accomplish is to delete only the lines that are
> completely nul. I thought that this could be accomplished by
> prefacing the match sting with the start of line anchor ^ and ending
> it with the end of line anchor $ but this does not work as I expect.
"[[.NUL.]]" is just a character specified by its collation name, so
treat as any other ordinary character:
sed -E '/^[[.NUL.]]+$/d' INFILE > OUTFILE
Need extended regexp here for '+' to work.
More information about the freebsd-questions
mailing list