• 締切済み

Linuxファイルに文字列ERRORが存在した場合

質問です ログ内容を、ファイル出力して 出力ファイルの中に、文字列で「ERROR」が存在した場合 ERRORを標準出力したいのですが どんな書き方を、するのがベストですか? 簡単な質問で申し訳ないですが お願いします

みんなの回答

回答No.2

使用されている言語はなんでしょう? B-shell系? C-shell系? それともC言語とかの類? もう少し具体的に書いて頂かないと、回答者も正しい回答を答えられませんよ。

全文を見る
すると、全ての回答が全文表示されます。
  • notnot
  • ベストアンサー率47% (4856/10272)
回答No.1

あるプログラムの出力をログとしてファイル出力して調べたいと言うことですか? プログラム > output.log if grep ERROR output.log >/dev/null then echo ERROR fi

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 複数の文字列を含むファイルの検索-linux

    linuxにおいてファイル内の文字列を検索するのにgrepを用いますが、 複数の文字列を含むファイルを検索するにはどうしたらよいでしょうか。 同じ行ではなく別の行にある場合で、ファイル名を出力したいです。 つまり ~~~~~~~~~ ~~~~~~~~文字列1  ~~~~~~~~~~ ~~~~~~~~ ~~~~~~~文字列2 のような記述のあるファイルを探すにはどうしたらよいでしょうか。

  • UNIXで複数のログファイルからエラー文字を探す

    初歩的な質問で申し訳ないのですが、UNIXで複数のログファイルから エラー文字を探して、確認したい次第です。 探したい文字列:E0001 ログファイル:20110823.log 20110824.log 20110825.log等日付名のログファイルがたくさんあります。 grepコマンドを使うといいと思うのですが、ご教授いただけますでしょうか。

  • Javaで出力したファイルをbzcatで閲覧すると表示される不明な文字列

    いつもお世話になっております。 環境 Solaris9 (1)log4jで出力したファイル「log4j.log」 (2)JavaのプログラムでSystem.out.println("標準出力")を利用  標準出力先に出力したファイル「Java test > system_out_println.log」 上記(1)、(2)で出力したファイルをtarで固め、bzip2で圧縮したファイル「java_log.tar.bz2」を bzcatコマンドで表示すると、ファイルの前後に出力していない不明な文字列 「010064400000000000001000002627041040600447200143460ustar00rootother00002100000000」等が表示されます。 --------------------------------------------------------------------------------------------------------------------------------- bzcat java_log.tar.bz2 log4j.log010064400000000000001000000065721040600477600146230ustar00rootother00002100000000log4jのログ・・・ system_out_println.log010064400000000000001000002627041040600447200143460ustar00rootother00002100000000標準出力先のログ・・・ --------------------------------------------------------------------------------------------------------------------------------- 解凍後のファイルをvi、catで確認しても上記の不明の文字列は出力されていません。 何故このような現象が起きるのか ご教授頂けますでしょうか?

  • アプリケーションのログファイルから、特定文字列を抽出し、

    アプリケーションのログファイルから、特定文字列を抽出し、 一致する場合ユーザ名とアクションをまとめたcsvファイルに出力をさせるvbsを作成したいのですが、 いろいろと調べても殆どが結果に結びついていません。 イメージは以下のようなものになります。 インプットファイル(ログファイル)には、以下のように出力されています。 20100601 USER1 update 20100601 USER2 logon 20100601 USER3 delete . . . . このファイルから、たとえばupdateを抽出し、その行にupdateの文字列が含まれていたら、 行内にあるUSER1を抽出させます。 処理が終わったら、以下イメージのCSV出力ファイルを作成します。 DATE,USERNAME,logon,update,delete 20100601,USER1,0,1,0 20100601,USER2,1,0,0 20100601,USER3,0,0,1 集計はエクセルを使用するのでカウントはせず、フラグ(1)を立てるだけをイメージしています。 updateの文字列は実際には記号等が含まれるので、grepのような正規表現にて抽出しないと難しい と思うのですが、vbsでのgrepがちょっとよくわかりません。 http://okwave.jp/qa/q5973058.html 上記アドレスで同じような質問がされていたのですが、 記載内容を実行してもエラー出力されてしまったため、質問させて頂きました。 なにとぞよろしくお願い致します。

  • コマンド 文字列検索 正規表現について

    すみませんどなたか教えて下さい。 ある処理が失敗するとエラーのlogファイルを出力します。 エラーがないと0バイトのファイルが作成されます。 そのファイルが0バイトの場合、次の処理を実行させるbatファイルを作成中です。 ファイルサイズの取得ができればいいのですが、コマンドで見つけ切れませんでした。 そこで、logファイルをfindftr /cで1文字でもあれば、、、で判断するようにしました。 正規表現を使って試しましたが、文字があってもヒットしません。 どなたかアドバイスをお願いします。 findstr /c:".*" d:\a.txt >nul 2>&1 if errorlevel 1 ( remエラーlogファイルに文字列なし ) else ( rem エラーlogファイルに文字列あり )

  • ファイルの文字列の処理の質問

    今ファイルに対して文字列の処理をしています。 あるファイルに対して一定の文字列を検索して、その検索したい文字列が なければ、その一行をファイルに出力したいですが、手元にwindowsバージョン のgrep.exe で実現すると考えています。 しかし、検索したいファイルは、文字列が入ってない行があります。 そのため、検索したい文字列が存在しない行は、改行だけの行を結果として 出力されています。改行だけの行を除きたいですが、どうすればいいか? ファイルのsjisです。例えば、内容としては、以下のようになっています。 aiiiiii ballllll fafafa 777777 とするファイルがあります。そのファイルに対して、aという文字が入ってない行を 取りたいですが、実際にgrep -v "a" ファイル名 でやると、777777の行とすべて 改行だけある行が取られてました。 777777だけをとる方法がありますでしょうか?

  • ファイルから文字列を読み出して、比較する方法

    ./log.dat に以下のように数行のログが記録されています。 文字列a<>ipアドレスa 文字列b<>ipアドレスb 文字列c<>ipアドレスc 上記ログ内に$wordに指定された文字列が含まれている場合の処理を行いたいのですが、この場合はどのように書けばよろしいのでしょうか。 $word = "文字列b<>ipアドレスb"; if ($word !~ ログ内容) {処理} ↑のように色々試してみましたがうまくいきません。Perlの知識は素人並みです。宜しくお願いいたします。

    • ベストアンサー
    • Perl
  • 文字列を指定して,別のファイルでその文字列が存在する行を出力する

    いつもお世話になっております. 環境はWindows XP Pro でActiveperlを用いてプログラムをしております. この度,皆様にご意見をうかがいたいのは,「文字列を指定して,別のファイルでその文字列が存在する行を出力する」という内容です. まず,以下のテキストファイルがあります. data.txt ---------------------- A BA C DA E FA G sansyo.txt ----------------------------- B D F ------------------------------- 処理として,data.txtでsansyo.txtの行が "含まれる"行数を出力する ------------------------------- output.txt ------------------------------- 2 4 6 ここで自分なりにプログラムを組んでみました. ----------------------------------- open(FILE, "sansyo.txt"); open(FILE2,"data.txt"); @file = <FILE>; close(FILE); @file2 = <FILE2>; close(FILE2); foreach $line (@file) { foreach $line2 (@file2) { if ($line =~ $line2){ $hit = $.; } open(NEWFILE, " >> output.txt") or die "$!"; print NEWFILE $hit; close(NEWFILE); } } #ここまで ------------------------------------- ですが,永久ループに入ってしまったようにファイルはできるのですが, 出力されてきません. 間違っている点をご指摘ください.

    • ベストアンサー
    • Perl
  • perl:文字列を数値として変換 警告でないように

    ある変数に 文字列として 数値が格納されている。 ノイズがあり、時には その変数に 英字数字のごちゃ混ぜ文字列が入るときがある。 文字列には数字だけが入っている前提で処理すると、時に その場合、Argument "○○"isn't numeric in addition・・・エラーがでてしまう。 このエラーを出力したくない、エラーログファイルに 読込エラーだったレコード内容を吐き出すようにしたい。 文字列が数字のみで構成されている場合は ○○を実行し、数字以外で構成されている場合は XXを実行するという if文を作成したいと考えている。よい判定方法を教えてください。 現在は、 $i=$i+0; if( $i =~ /^\d+$/ ){ ○○} else{ XX}としているが、 $i=$i+0; の行でエラーが出てしまうときがある。

  • 【DOSコマンド】一致した文字列の次の単語を出力

    コマンドの実行結果の標準出力をリダイレクトしてテキストファイルに書き出しました。 このファイルを検索し、マッチした文字列の次の単語を出力したいのですが、 標準のDOSコマンド(あるいはコマンドラインで動作するフリーソフトを使用するのでも構いません)で実現するにはどうすれば良いでしょうか? テキストファイルの内容例 hogehoge: abcdefg この場合、abcdefgを出力したいです。 hogehogeは大文字小文字入り交じっています。