• ベストアンサー

solarisのgrep-これでいいんでしょうか

はじめまして、yulaliといいます。 solaris(sunOS6?)でログファイル内の特定文字をgrepで引っかけたいのですが 現在実際にさわれる環境にないため確認させて頂きます。 「strA」「strB」「strC」のいずれかを含む行を抜き出す場合は cat target.log | /usr/xpg4/bin/grep -e strA -e strB -e strC で良いんですか? あと、-c や -F の使い方(結果)もlinuxと同じと考えて良いんでしょうか 初歩的な質問ですいませんが、自信がないのでどうかよろしくお願いします。

  • yulali
  • お礼率75% (171/226)

質問者が選んだベストアンサー

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

> すいません、都合上マニュアルも見れないんです。無いない尽くしで聞きっぱなしで申し訳ありません。 Web で AnswerBook が見られる(→参考URL)ので、マニュアルが見られないは言い訳になりません :-) # 良い時代になりました

参考URL:
http://docs.sun.com:80/ab2/coll.153.4/REFMAN1/@Ab2PageView/91744?Ab2Lang=ja&Ab2Enc=shift_jis
yulali
質問者

お礼

ありがとうございます!これを探していたんです! お蔭様で大変助かりました。 >マニュアルが見られないは言い訳になりません :-) そうですね。言い訳をするつもりではなくオンラインマニュアルが見れないので代わりになるHP等を知りたいと言いたかったんですが、書き方がまずかったようです。 もしお気を害しましたらすみません。 今回はどうもありがとうございました。

その他の回答 (2)

  • ken2
  • ベストアンサー率36% (86/235)
回答No.3

マニュアルってオンラインマニュアルですよ・・・ % man grep でも、Solarisだと業務用は、入ってないかもね・・・(よく入れないことがあった・・・)

yulali
質問者

お礼

補足ありがとうございました。

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

マニュアルは読んだのでしょうか? > あと、-c や -F の使い方(結果)も同じと考えて良いんでしょうか -c は、指定したパターンを含む行数を出力するオプションですから、それを 指定しないときと結果は違います。 -F については、検索パターンに正規表現を使っていませんから、同じ結果に なります。 同じような動きをするのには、 grep "str[ABC]" target.log が、一番簡潔な書き方になるでしょうか。

yulali
質問者

補足

ご回答ありがとうございます。 すいません、都合上マニュアルも見れないんです。無いない尽くしで聞きっぱなしで申し訳ありません。 それと例ではそれぞれ「strA」「strB」「strC」と書きましたが実際は違った文字列なので正規表現は使えないと思います。 使い方(結果)も同じと→使い方(結果)もLinuxと同じと の間違いです。すぐに気がついて訂正依頼をgooに出したのですが間に合いませんでした。 分かりづらい説明ですみませんでした。 とりあえず、solarisでもオプション等同じと考えて良いんですね。ありがとうございます。 もしよろしければsolarisの基本コマンドリファレンスを扱ったページ等お教え願えますか。

関連するQ&A

  • 複数存在するgrepについて

    自分はSolaris7(8)を使用しているのですが、grepが /bin/grep /usr/bin/grep /usr/xpg4/bin/grep の3つ存在しています。動作的には前者2つが同じようで、最後者がちょっと拡張されているように思われます。思うに大きな違いは"-f|-e"(ファイルにマッチすべき文字列を書いておくことが出来る)が大きいと思うのですが、そこで、 1) /xpg4 というdirectoryはどのような意味合いを持っているのでしょうか?どのような括りでこのディレクトリがあるのでしょうか? 2) 上に書いたオプションの違いのほかに、両者にはどのような違いが有るのでしょうか? 3) 通常、UNIXのユーザーは/usr/bin/grepがデフォルトで使っているというのが「正しい」と思うのですが、後者(xpg4)がデフォルトとして使われる場合にはどのようなケースがあるのでしょうか? --[参考]-- /usr/bin/grep [ -bchilnsvw ] limited-regular-expression [filename ... ] /usr/xpg4/bin/grep [-E | -F ] [-c | -l | -q ] [ -bhinsvwx ] -e pattern_list ... [ -f pattern_file ... ] [ file ... ] ---------- 宜しくお願いいたします。

  • solarisのmakeについて

    こんにちは。教えて下さい。 solaris7にperl5.6.1をインストールしようとしている所です。 ./configuerを実行したあと、makeをしないといけないようなのですが、 make とやると、「見つかりません」と言われてしまいます。 PATHが通ってないのかと思い、echo$PATH とやると /usr/bin:/usr/sbinと出てきます。 で、ここでmakeを探したのですが見あたらなかったので、 find / -name make としてやると、 /usr/share/lib/make /usr/ccs/bin/make /usr/xpg4/bin/make の三つが見つかりました。 このうち、Linuxでいう/usr/bin/makeにあたる物はどれなんでしょうか。 それとも、私は基本的に何か勘違いをしているでしょうか。 solarisもLinuxもよくわかっていません。 何かアドバイスいただけると嬉しいです。宜しくお願いいたします。

  • gdbをインストールできない

    Solaris10を使っています GDBをインストールしたいのですがうまくいきません gdb6.8をダウンロードして解凍後、 #CC=gdd ./configure は成功しているんですが #make でいろいろ動いたあと最後に make: Fatal error: Command failed for target `all' と出力され、 ためしにmake installしてみましたが いろいろ動いたあと最後に make: Fatal error: Command failed for target `install' となってやっぱりインストールできていません 私はSolaris初心者でなにが原因なのかさっぱりわかりません なにかヒントでもいただければ幸いです ちなみにPATHは PATH: bin PATH: /usr/bin PATH: /etc PATH: /usr/sbin PATH: /usr/ucb PATH: /usr/sfw/bin PATH: /sbin PATH: /usr/xpg4/bin に通しています よろしくお願い致します

  • solaris10にて、SMFからのapache+ssl起動

    solaris10にて、apache2+sslの環境を構築しているのですが、SMF経由でapacheを起動させると、sslが有効になりません。 SMFにて使用する、起動用のスクリプト「/lib/svc/method/http-apache2」内のsvcpropというコマンドで、チェックしているところまでは分かったのですが、ここからが分かりません。 どなたか、ご教授願います。 ★SMFからの起動(apache2のみ起動される) # /usr/sbin/svcadm disable svc:/network/http:apache2 # /usr/sbin/svcadm enable svc:/network/http:apache2 # svcs -a |grep apache2 online 11:30:43 svc:/network/http:apache2 # ps -ef|grep http |grep -v grep root 692 1 19 11:30:43 ? 0:06 /usr/local/apache2/bin/httpd -k start webservd 698 692 0 11:30:51 ? 0:00 /usr/local/apache2/bin/httpd -k start ★apache2+SSL手動起動 ・apache無効化 # /usr/sbin/svcadm disable svc:/network/http:apache2 # /usr/local/apache2/bin/apachectl startssl # ps -ef|grep http webservd 675 670 0 11:25:45 ? 0:00 /usr/local/apache2/bin/httpd -k start -DSSL root 670 1 9 11:25:42 ? 0:03 /usr/local/apache2/bin/httpd -k start -DSSL

  • SolarisからLinuxへコピーしたスクリプトについて

    Solaris上で動作しているPerlスクリプトがあるのですが、 Linux上で動作させることができないので、困っています。 原因を特定するため、Solarisからコピーしたファイルの 中身を、下記コードに入れ替えた場合と、新規にLinux 上で作成した場合を比べてみると、表示結果が異なります。 solarisからコピーしたファイルを表示すると、 「500 サーバ内エラー サーバー内で、実行中のプログラムが異常終了しました。」 と表示されます。 新規にLinux上で作成したファイルを表示すると、 問題なく表示されます。 これくらいしか分からないのですが、何かアドバイスを いただけないでしょうか? # file test.pl <-Solarisからコピーしたファイルを編集 script text executablerl # file test2.pl <-Linux上で新規作成 test.pl: a /usr/bin/perl script text executable ・コード #!/usr/bin/perl print "Content-type: text/plain\n"; print "\n"; print "Hello!World"; exit(0);

  • solaris8へ、rcsのインストールで困っています。

    RCSがインストールしたてなのですが、なぜか、2回目以降のチェックアウトの際に以下のメッセージが表示されて、jうまく使うことが出来ません。 同様の問題にぶち当たったかたはいらっしゃいませんでしょうか? インストールはsolarisのパッケージ形式:     rcs-5.7-sol8-sparc-local を使用、OSはSolaris 8 です。 [現象] > mkdir RCS; touch aaa > ci -l aaa > cat /etc/hosts >> aaa > ci -l aaa /usr/local/bin/diff: オプションが正しくありません -- a 使用法: diff [-bitw] [-c | -e | -f | -h | -n] file1 file2 diff [-bitw] [-C number] file1 file2 diff [-bitw] [-D string] file1 file2 diff [-bitw] [-c | -e | -f | -h | -n] [-l] [-r] [-s] [-S name] directory1 directory2 ci: RCS/aaa,v: diff failed ci aborted [その他] > where diff /usr/local/bin/diff --[*1] /usr/bin/diff   --[*2] /bin/diff --[*3] [*1]最初の状態でこれは無かったので、最初からある[*2][*3]をコピーしてみたが、どっちも意味なく同じメッセージが出て終了してしまいます。

  • Solarisでプロンプトの変更方法

    Solarisのコマンドプロンプトの変更方法について教えてください。 ユーザの.profileを以下のように修正しました。 ユーザ名やホスト名は出来たのですが、現在いるディレクトリの表示が 出来ません。下記の”$PWD”と言う部分で表示させたいと思っている のですが、色々試してもなかなかうまくいかず・・・。 OSはSolaris8、シェルはshで、シェルの種類は変えられません。。。 ========.profile==================== PS1="[`logname`@`hostname`:`$PWD`]# " PATH=$PATH:/usr/sbin:/usr/bin:/usr/local/bin:/sbin:/usr/ccs/bin:/usr/sfw/bin: export PATH PS1 MANPATH=$MANPATH:/usr/share/man:/opt/VRTS/man export MANPATH umask 022 ========env========================= [root@XXYYZZ:]# env HOME=/ HZ=100 LANG=ja LOGNAME=root MAIL=/var/mail/root MANPATH=:/usr/share/man:/opt/VRTS/man PATH=/usr/sbin:/usr/bin:/usr/sbin:/usr/bin:/usr/local/bin:/sbin:/usr/ccs/bin: PS1=[root@XXYYZZ:]# SHELL=ksh TERM=vt100 TZ=Japan _INIT_NET_STRATEGY=none _INIT_PREV_LEVEL=S _INIT_RUN_LEVEL=3 _INIT_RUN_NPREV=0 _INIT_UTS_ISA=sparc _INIT_UTS_MACHINE=sun4u _INIT_UTS_NODENAME=XXYYZZ _INIT_UTS_PLATFORM=SUNW,Sun-Fire-V240 _INIT_UTS_RELEASE=5.8 _INIT_UTS_SYSNAME=SunOS _INIT_UTS_VERSION=Generic_117000-03 アドバイス、よろしくお願いいたします。

  • solarisのシェルについて(sedコマンド)

    こんにちわ solarisのBシェルを現在使用しているのですが、 sedコマンドを使用して"を消したいのです。 具体的には # cat /tmp/test.log |sed | sed -e "s/"//g" というようなコマンドを打ちたいのですが、 この場合はどのようにすればよいのでしょうか? よろしくお願いします。

  • DNSのcronデーモンが停止してしまう

    みなさん、こんにちは。 タイトルの質問です。 solarisでDNSサーバとメールサーバを兼用しています。 そのサーバでなぜかcrondがストップしてしましました。 # tail -10 /var/cron/olog ! ******* CRON ABORTED ******** (月) 1月 27 20:46:13 2003 ps -ef | grep cron で cron のプロセス(/usr/sbin/cron)が存在していません。 messages, syslog, dmesg には、 cronに関連したメッセージはありませんでした。 # /etc/rc2.d/S75cron start でもたちあがりません。 # cd /etc/rc3.d # sh -x ./S75cron start + /usr/bin/ps -e + /usr/bin/grep cron + /usr/bin/sed -e s/^ *// -e s/ .*// pid= + [ = ] + /usr/bin/rm -f /etc/cron.d/FIFO + [ -x /usr/sbin/cron ] + /usr/sbin/cron # ps -ef | grep cron root 21364 1 0 23:46:15 ? 0:00 /usr/sbin/cron で立ち上がりました。 外部からの侵入形跡はなく、どうしてクーロンが停止したのか 理由が分かりません。 どなたかお分かりになる方、教えてください。 宜しくお願い致します。

  • Solaris10でdelegateをインストール

    OS:Solaris10(SPARC)を使っています。 delegateのインストールをしようとしているのですが 解凍したあとmakeコマンドを入れると # cd work/delegate8.95 # /usr/ccs/bin/make すると、以下のメッセージがでます。 cc -DMKMKMK -DDEFCC=\"cc\" -I../include -L../lib mkmkmk.c -o mkmkmk.exe /usr/ucb/cc:language optional software package not installed **Error Code 1 make:Fatal error :Command failed for target 'mkmake.exe' # /usr/ccs/bin/make CC=gcc と入れても sh:gcc 見つかりません とエラーがでます。 コンパイラがインストールできていないのでしょうか?それともパスの設定がまずいのでしょうか? どこから手をつけてよいかわからない状態です。アドバイスをよろしくお願い致します。