Suponha que eu faça
grep "MyVariable = False" FormA.frm
... result1
grep "MyVariable = True" FormA.frm
... result2
Como escrever o comando grep para que eu possa dizer algo como
grep "MyVariable = False" OR "MyVariable = True" FormA.frm
Responder1
O que você realmente quer é "OU", não "E". Se "AND" for usado, logicamente, você não obterá linhas (a menos que a linha seja algo como "MyVariable = False...MyVariable = True".
Use "grep estendido" e o operador OR ( |
).
grep -E 'MyVariable = False|MyVariable = True' FormA.frm
Responder2
Você deveria usar
grep "MyVariable = \(False\|True\)" FormA.frm
onde a \|
sequência significa uma alternativa, e os delimitadores \(
e \)
são para agrupamento.
Responder3
Você pode simplesmente fazer
grep -E "MyVariable = False|MyVariable = True" FormA.frm
Responder4
Para responder de outra forma além do que já foi dito...
Você também pode especificar diversas correspondências para o grep, especificando a -e
opção diversas vezes
% grep -e "MyVariable = True" -e "MyVariable = False" FormA.frm
... result1
... result2