Sql server 子Shell中的Bash-BG进程:显示输出和管道到命令(Docker CMD启动Shell脚本) 直接问题

Sql server 子Shell中的Bash-BG进程:显示输出和管道到命令(Docker CMD启动Shell脚本) 直接问题,sql-server,bash,shell,docker,dockerfile,Sql Server,Bash,Shell,Docker,Dockerfile,我正在BG的一个子shell中启动一个命令。如何将输出传递给FG进程并在屏幕上显示 (/opt/mssql/bin/sqlservr&)| grep-q“服务代理管理器已启动” 此命令有效,但我无法在屏幕上看到sqlserver的输出 脚本必须等待sqlserver打印“Service Broker manager已启动”,然后才能继续。 用例和源代码 这是当前设置。文件是缩写的 --- Dockerfile FROM mcr.microsoft.com/mssql/server:2019-

我正在BG的一个子shell中启动一个命令。如何将输出传递给FG进程并在屏幕上显示

(/opt/mssql/bin/sqlservr&)| grep-q“服务代理管理器已启动”
此命令有效,但我无法在屏幕上看到
sqlserver
的输出

脚本必须等待
sqlserver
打印
“Service Broker manager已启动”
,然后才能继续。

用例和源代码 这是当前设置。文件是缩写的

--- Dockerfile

FROM mcr.microsoft.com/mssql/server:2019-latest
CMD ["/bin/bash", "dockerrun.sh"]
——dockrun.sh
#启动数据库并等待它启动。
(/opt/mssql/bin/sqlservr&)| grep-q“ServiceBroker管理器已启动”
#从备份文件还原数据库
~/sqlpackage/sqlpackage#args
#保持此脚本运行,否则Docker将停止容器。
而睡眠1000;do:;完成

如果您想通知用户,可以使用
tee
将所有输出复制到stderr:

( /opt/mssql/bin/sqlservr | tee /dev/stderr & ) |
    grep -q "Service Broker manager has started"