killでプロセスを終了したときの”終了しました”を表示させたくない

OKWave

2007-12-03 14:00

killでプロセスを終了したときの”終了しました”を表示させたくない

お世話になります。
下記の内容のシェルスクリプトを実行すると数字の1〜5が表示され最後に”終了しました”(LANG=Cだと”Terminated”)と表示されます。この”終了しました”を表示させたくないのですが何か良い方法はありますでしょうか?
よろしくお願い致します。
------- 以下シェルスクリプト --------


#!/bin/sh

i=0
(
while :
do
sleep 1
done &
) | while :
do
echo $i
if [ $i -eq 5 ];then
kill -TERM 0
fi
i=`expr $i + 1`
done
回答

sleepが効かないように書いてあるので何をしたいのか分かりませんが、
kill -TERM 0
の代わりに
exit
を使えばいいでしょう。

shのマニュアルのexitのところ:

exit [n]
Cause the shell to exit with a status of n. If n is omitted,
the exit status is that of the last command executed. A trap on

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

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

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

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

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