これはあなたが探していたものだと思います:
grep -E "string1|string2" filename
次のような答えだと思います:
grep 'string1.*string2\|string2.*string1' filename
どちらか一方または両方ではなく、両方が存在する場合にのみ一致します。
使用できます
grep 'string1' filename | grep 'string2'
または
grep 'string1.*string2\|string2.*string1' filename