gpt4 book ai didi

linux - 如何在 bash 中运行捕获输出并等待命令完成的命令?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:16 26 4
gpt4 key购买 nike

我在 bash 脚本中使用以下内容:

命令>>/var/log/somelog.log 2>&1&

我这样做的原因是因为我想在 /var/log/somelog.log 中捕获所有输出。

这很好用。 但是它不会等到命令完成。所以这让我想到了一个问题,我如何才能在 /var/log/somelog.log 中捕获 command 的所有输出? bash 脚本在 command 完成之前继续吗?

最佳答案

只需省略最后的符号 &,例如

command >> /var/log/somelog.log 2>&1

来自 Bash - Lists of Commands

If a command is terminated by the control operator ‘&’, the shell executes the command asynchronously in a subshell. This is known as executing the command in the background. The shell does not wait for the command to finish, and the return status is 0 (true).

关于linux - 如何在 bash 中运行捕获输出并等待命令完成的命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40363610/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com