exec 2>&1 – 排除某些命令被记录到文件

exec 2>&1 – 排除某些命令被记录到文件

我的 bash 脚本中有以下内容:

# catch input for log-data
exec > >(tee -i ${LOG})
exec 2>&1

我想排除一个命令写入该日志文件,但以下操作不起作用:

/sbin/runuser -l USER -c 'COMMAND' >/dev/null 2>&1

它总是被记录到${LOG}文件中。我该如何防止这种情况?

答案1

我想我已经明白了,我的解决方案是:

恢复 exec 命令:

exec 1>&2 2>&-

执行命令

恢复旧的执行:

exec 2>&1

如果有更好的解决方案,可以告诉我:)

相关内容