編集部からのお知らせ
ダウンロード公開中「ITが取り組むべきプライバシー」
最新記事まとめ「医療IT」

シェルでの強制終了

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 記事を毎朝メールでまとめ読み(登録無料)

特集

CIO

モバイル

セキュリティ

スペシャル

ホワイトペーパー

新着

ランキング

  1. クラウドコンピューティング

    AWS、Microsoft、Googleがリード!パブリッククラウドコンテナプラットフォーム市場分析

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

    ウィズコロナ時代はあと2年は続く?!アフターデジタル時代の4つの重要ポイント

  3. セキュリティ

    2021年のサイバー脅威予測が明らかに─将来の攻撃に企業はいかに備えるべきか

  4. OS

    “テレワークだからこそ”デスクトップPCを利用すべき?!ノートPCにはない魅力の数々に迫る

  5. 運用管理

    7つの視点で解説するデータベース構築・運用ー誰でもわかるSQL Serverストレージガイド

NEWSLETTERS

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

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

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