名前付きパイプが閉じた後にコマンドをトリガーする方法は?

名前付きパイプが閉じた後にコマンドをトリガーする方法は?

名前付きパイプをもう一方の端から読み取った後、特定のコマンドをどのように実行できますか? . を試してみましたが、trap何も起こりませんでした。私のスクリプトは次のとおりです。

#!/bin/sh

cleanup()
{
  echo "Caught Signal ... cleaning up the background process."
}

trap cleanup PIPE

if [ ! -p "/tmp/mysqld.init" ]; then
    mkfifo /tmp/mysqld.init
fi

echo  "CREATE DATABASE IF NOT EXISTS test;" > /tmp/mysqld.init &

exec mysqld --init-file="/tmp/mysqld.init"

注:これは私のDockerイメージのエントリポイントスクリプトであり、exec私の場合は必要です。

ベストアンサー1

おすすめ記事