シェルでの強制終了

OKWave

2007-09-25 13:00

シェルでの強制終了

通常で実行すると永遠と実行結果を出力するコマンドを、シェル内部にて実行して 内容をログに吐き出したいのですが停止方法がわかりません。
(ctrl+cと同じ事をシェル内部でやりたい。)

#!/bin/sh
prstat -t | awk '{print $2, $5}' > prstat.log

宜しくお願いします。

良回答

sleep XX -> kill はこの場合無効だと思われます。
(prstat -t だけだと永久ループのコマンドの為)

この場合は
prstat -t ではなく

prstat -t 1 300
としましょう。

意味合いとしては -t の出力結果を1秒毎更新、300回繰り返し
という意味です。
但しこの場合 prstat.log には300回実行分のログが残ります。

補足ですが prstat -t 300 1
とした場合 300秒毎に1回更新せよという意味になりますが
はじめの1回は一瞬で返ってくるので、これを1回とカウントしてしまうようです。

300秒後にもう1度実行させたい場合は prstat -t 300 2 とするが吉です。 但しこの場合もログには2回分の結果がのこります。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    セキュリティに対する意識や対策状況の違いが浮き彫り--日米豪における情報セキュリティの実態を調査

  2. セキュリティ

    セキュアな業務環境を実現する新標準「Chrome Enterprise Premium」活用ガイド

  3. セキュリティ

    「脱VPN」で実現するゼロトラストセキュリティ!VPNの課題を解消し、安全なリモートアクセスを確立

  4. セキュリティ

    もはや安全ではないVPN--最新動向に見る「中小企業がランサムウェア被害に遭いやすい」理由

  5. ビジネスアプリケーション

    ITR調査レポートから紐解く、間違いだらけのDX人材育成--研修だけでは成果にならないその理由は?

ZDNET Japan クイックポール

所属する組織のデータ活用状況はどの段階にありますか?

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]