首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何将STDERR捕获到bash变量中而不影响STDOUT?

要将STDERR捕获到bash变量中而不影响STDOUT,可以使用重定向和命令替换的方式实现。

在bash中,可以使用重定向符号"2>"将STDERR重定向到一个临时文件中,然后使用命令替换将该临时文件的内容赋值给一个变量。

下面是具体的步骤:

  1. 创建一个临时文件,用于存储STDERR的输出:temp_file=$(mktemp)
  2. 将STDERR重定向到临时文件中:command 2> "$temp_file"

其中,"command"是需要执行的命令,可以是任何产生错误输出的命令。

  1. 将临时文件的内容赋值给一个变量:error_output=$(< "$temp_file")
  2. 删除临时文件:rm "$temp_file"

现在,错误输出已经被捕获到了变量"error_output"中,而标准输出仍然会显示在终端上。

这种方法适用于需要在脚本中捕获错误输出并进行处理的情况,例如错误日志记录、错误处理等。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券