0

I'm trying to make a bash script where it searches for a pattern in different files (they start all with the same word).

The script works but gives an error when the pattern is found ("[: too many arguments") and after the error it gives the result that I'm looking for. When the pattern is not found, the error does not show up. So how do I get rid of the error when the pattern is found?

#!/bin/bash

#Look for sample with their barcode

echo "Wich sample are you looking for?"
read barcode

pattern=$(grep $barcode samples*)

if [ -z $pattern ]

then echo "$barcode did not yet arrive."
else echo "$pattern"

fi
John Kugelman
  • 349,597
  • 67
  • 533
  • 578

0 Answers0