2016-09-26 3 views
1

Solarisのgrep -e pattern1 -e pattern2 "$file"に相当するものは何ですか?Solarisでは "grep -e pattern1 -e pattern2 <file>"に相当するものは何ですか?

Linuxではうまく動作します。 Solarisでは、私は "grep:illegal option - e "を使用しています。使用法:grep -hblcnsviwパターンファイル... "エラー。

誰でも助けてください。

+2

のためのあなたの第二 '-e'は何ですか?それはLinuxでも正しくありません。ファイル名ではなく、パターンの前に '-e'だけを置くべきです。 –

+1

また、どのバージョンのSolaris? [POSIX 'grep'](http://pubs.opengroup.org/onlinepubs/009604499/utilities/grep.html)では、パターンの直前で' -e'をサポートする必要があります。 –

+0

ああ。私はより明確にあなたの質問を編集しました。 –

答えて

1

の代わりに:

# GNU grep only 
grep -e pattern1 -e pattern2 file 

...あなたが使用することができます。

# POSIX-compliant 
grep -e 'pattern1 
pattern2' file 
+0

"grep -e $ pid -e " ....文字列部分が欠落して申し訳ありません。この文字列は正規表現を持つことができます/( - )。.. –

+0

完璧です。質問は非常にクリアです.. Linuxでは "grep -e pattern1 -e pattern2 file"はpattern1またはpattern2を意味し、 "grep -e" pattern1 | pattern2 'file "はpattern1とpattern2を意味します... Solarisの場合はどうなりますか?私はsolarisを持っていませんシステムはチェックできません。 –

+1

'grep 'pattern1 \ | pattern2''(バックスラッシュ、' -e'には注意してください)または 'grep -e" pattern1 \ npattern2 "'(改行に注意してください)。私は間違っているかもしれませんが、それが私がPOSIX仕様をどのように読んでいるかです。 – hek2mgl