文字列と変数のセットとパターンマッチングを実行できるegrepコマンドを作成しようとしています。これまで私は以下を使用しています:
ps -ef <uid> | egrep "string1|string2" | egrep -v "string4|string5" | grep -v "${variable}"
これはうまくいきますが、均一で効率的な構文を持つように努めています。
Linux では次のコマンドを使用できますが、AIX では使用できません。
ps -ef <uid> | egrep "string1|string2" | grep -v "${variable}\|string4\|string5"
マニュアルページを見て、egrep -cなどを試しましたが、うまくいく組み合わせを得ることはできません。
ベストアンサー1
grepコマンドとegrepコマンドを一緒に混在させ、grepが交互に正規表現に-E
解析できるようにするために必要なフラグを削除しました。|
または、全体としてegrepを使用してください。
次のいずれかを使用します。
ps -ef | egrep "string1|string2" | egrep -v "${variable}|string4|string5"
または
ps -ef | egrep "string1|string2" | grep -Ev "${variable}|string4|string5"
variable
...どちらの場合も、正規表現トークン(またはその問題のさまざまな文字列N)をエスケープすることに注意してください。