相关疑难解决方法(0)

如何分析这个命令`{ 2>&3 "$@"& } 3>&2 2>/dev/null`?

几周前,我看到了一个关于“ (如何)在后台静默启动任务? ”这个问题的奇怪答案。这个解决方案似乎不正确(参见我的回答),尽管 shell 似乎在后台默默地启动了任务。

I. 问题:我们真的可以重定向 shell 标准错误吗?

建议的解决方案没有任何解释,分析也没有提供可靠的答案。

在下面,您可以看到代码片段。

# Run the command given by "$@" in the background
silent_background() {
   if [[ -n $BASH_VERSION ]]; then
      { 2>&3 "$@"& } 3>&2 2>/dev/null
   fi
}
Run Code Online (Sandbox Code Playgroud)

有问题的命令是{ 2>&3 "$@"& } 3>&2 2>/dev/null.

i) 分析

命令组{ ... }( ) 为一个命令 ( )指定了两个重定向 (3>&2和)。该命令是一个具有一个重定向 ( )的异步列表( )。2>/dev/null# Run the command given by "$@" in the backgroundcmd&2>&3

POSIX …

shell bash io-redirection background-process

7
推荐指数
2
解决办法
1197
查看次数

运行脚本并且不会失去对提示/终端的访问权限

我通过启动 .sh 脚本来运行 jmeter,一旦我这样做,我就无法再次开始使用提示,除非我按 ctrl-z、ctrl-c 或脚本以其他方式结束。如何启动该脚本并在启动脚本后仍然能够使用相同的控制台。(我曾经知道如何做到这一点,这很容易 =()

我想另一种说法是如何独立于终端启动脚本。

linux shell-script

2
推荐指数
1
解决办法
3417
查看次数