我需要运行某个命令(在本例中为 ngrok)几秒钟,捕获所有输出,过滤掉一些变量,然后分离进程,使其在后台隐形运行。我怎样才能做到这一点?
答案1
(cmd &) | (timeout --foreground 2 cat; cat > /dev/null &)
将向您显示 2 秒的输出cmd
,然后返回,cmd
在后台运行,其输出将变为/dev/null
.
您可以将其重定向到文件或存储在变量中:
var=$(that command)
我需要运行某个命令(在本例中为 ngrok)几秒钟,捕获所有输出,过滤掉一些变量,然后分离进程,使其在后台隐形运行。我怎样才能做到这一点?
(cmd &) | (timeout --foreground 2 cat; cat > /dev/null &)
将向您显示 2 秒的输出cmd
,然后返回,cmd
在后台运行,其输出将变为/dev/null
.
您可以将其重定向到文件或存储在变量中:
var=$(that command)