gpt4 book ai didi

Bash 脚本 : Suppress job creation message

转载 作者:行者123 更新时间:2023-11-29 09:25:29 25 4
gpt4 key购买 nike

我有一个并行运行几个子进程的 bash 函数,如下所示:

#!/bin/bash
function check() {
set +m
for f in foo bar ; do
(
if [ -f $f ] ; then ls -la $f >> all; fi
) &
done
wait
}

在采购和运行这个(.scriptfile; check)时,+m 已经成功地抑制了作业完成输出,但它仍然在创建时显示进程 ID,例如:

[1] 123
[2] 456

如何抑制这些 ID 行?

最佳答案

Shell 在 stderr 上写入后台进程 ID,因此一种方法是在脚本中抑制 stderr:

#!/bin/bash
function check() {
set +m
for f in foo bar ; do
{
if [ -f $f ] ; then ls -la $f >> all; fi
} &
done 2>/dev/null
wait
}

关于Bash 脚本 : Suppress job creation message,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39027331/

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