-1

次のスクリプトをwindow1で実行します

#!/bin/bash

function handler
{
  echo "the time is $(date)" >> /tmp/zz
}

rm /tmp/zz
trap handler USR1
echo "This is $$"
cat

window2で、「kill-USR1PID_OF_WINDOW1_SCRIPT」を使用してシグナルを送信しています。

/tmp/zzシグナルを送信した後、ファイルは存在しません

私はこれが過去に私のために働いていたとかなり確信しています何かアイデアはありますか?

4

1 に答える 1

1

シェルは、cat完了するまでハンドラーを自由に呼び出すことはできません。ファイルの終わりの文字(Controld)を最後catに入力します。これにより、シェルがハンドラーを実行して終了します。

于 2013-02-28T17:14:24.223 に答える