在另一端读出命名管道后,如何执行某些命令。我试图使用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
在我的情况下是必需的。