Quantcast
Channel: User Dominique - Super User
Viewing all articles
Browse latest Browse all 176

Why does my "grep" stop filtering a non-ASCII file it thinks is "binary"?

$
0
0

I'm working with a Windows-10 computer, using a WSL.

I'm investigating a logfile, produced by NLog in a C# application. I'm expecting log entries to appear everywhere throughout the file, but I see the following:

Linux prompt> grep "geen mengcontainer" logfile.log2023-03-07 07:25:08.7971 | Warn | ... | geen mengcontainer.2023-03-07 07:25:09.8285 | Warn | ... | geen mengcontainer.2023-03-07 07:25:10.8754 | Warn | ... | geen mengcontainer.Binary file logfile.log matches

As you see, after 07:25:10, the grep stops, even though the file goes further for the rest of the day. There seems to be some character, telling grep that the file is not a textfile, but a binary file, causing grep to stop working.

Some more information about the file:

Linux prompt>file logfile.loglogfile.log: ASCII text, with CRLF line terminators

Some more information about my Linux WSL installation:

Linux prompt>uname -aLinux ComputerName 4.4.0-19041-Microsoft  #2311-Microsoft Tue Nov 08 17:09:00 PST 2022   x86_64 x86_64 x86_64 GNU/LinuxLinux prompt> cat /etc/os-releaseNAME="Ubuntu"VERSION="20.04.2 LTS (Focal Fossa)"ID=ubuntuID_LIKE=debianPRETTY_NAME="Ubuntu 20.04.2 LTS"VERSION_ID="20.04"...VERSION_CODENAME=focalUBUNTU_CODENAME=focal

Some more information about my grep installation:

Linux prompt> grep --versiongrep (GNU grep) 3.4

What can I do?

  • Does anybody know how to find and replace the character, which is responsible for grep to stop filtering?
  • Does anybody know which extra parameter or switch I can add to grep in order not to stop filtering?
  • Does anybody know about a grep version which does not behave like this? (Please take into account that apt update things don't work on my environment)

Thanks in advance


Viewing all articles
Browse latest Browse all 176

Trending Articles