Re: [PATCH 2/2] t9200: avoid grep on non-ASCII data
- From
Eric Sunshine <sunshine@sunshineco.com>
- Date
- Feb 21, 2016, 21:15 UTC
- Message-ID
- <CAPig+cQkcUPD5+0rUPkKCcJSzRC0NkuRYKHmW54eZ041PqaqmQ@mail.gmail.com>
- In-Reply-To
- <42c95c23bffcbb526aaae302f80667867d164876.1456075680.git.john@keeping.me.uk>
On Sun, Feb 21, 2016 at 12:32 PM, John Keeping <john@keeping.me.uk> wrote:
Show 14 quoted lines
> GNU grep 2.23 detects the input used in this test as binary data so it
> does not work for extracting lines from a file. We could add the "-a"
> option to force grep to treat the input as text, but not all
> implementations support that. Instead, use sed to extract the desired
> lines since it will always treat its input as text.
>
> Signed-off-by: John Keeping <john@keeping.me.uk>
> ---
> diff --git a/t/t9200-git-cvsexportcommit.sh b/t/t9200-git-cvsexportcommit.sh
> @@ -35,7 +35,7 @@ exit 1
> check_entries () {
> # $1 == directory, $2 == expected
> - grep '^/' "$1/CVS/Entries" | sort | cut -d/ -f2,3,5 >actual
> + sed -ne '\!^/!p' "$1/CVS/Entries" | sort | cut -d/ -f2,3,5 >actualThis works with BSD sed, but double negatives are confusing. Have you considered this instead?
sed -ne '/^\//p' ...
> if test -z "$2" > then > >expected