首页 > 解决方案 > 前置然后重定向

问题描述

我想重定向stderr到一个文件以进行日志记录:

2>> "$logFile"

如何将字符串"error: "添加到每一行?

标签: bashpipeio-redirection

解决方案


另一种选择是sed

2> >(sed -u 's/^/error: /' >> "$logfile")

仅使用 bash 内置函数可能是不可能的,因为这种为字符串添加前缀的机制需要与流一起使用。

请注意使用gnu sed选项-u( --unbuffered) 从输入文件加载最少量的数据并更频繁地刷新输出缓冲区。

代码演示


推荐阅读