Bash 使用tee和jq编写txt和json日志文件

Bash 使用tee和jq编写txt和json日志文件,bash,sh,jq,tee,Bash,Sh,Jq,Tee,我想使用tee编写两个日志文件,第一个日志文件为txt,第二个日志文件为json Tee正在处理两个txt文件,但无法让jq处理Tee 我的代码: logfilename="log_download_2017" echo "start process $(date -u)" | tee -a $logfilename.txt >> jq . $logfilename.json echo "logfilename" $logfilename | tee -a $logfilename.

我想使用tee编写两个日志文件,第一个日志文件为txt,第二个日志文件为json

Tee正在处理两个txt文件,但无法让jq处理Tee

我的代码:

logfilename="log_download_2017"
echo "start process $(date -u)" | tee -a $logfilename.txt >> jq . $logfilename.json
echo "logfilename" $logfilename | tee -a $logfilename.txt >> jq . $logfilename.json
控制台输出:

tee::是一个目录
tee::是一个目录

日志文件输出:

开始流程2017年5月15日星期一03:14:09 UTC

logfilename log\u download\u 2017

根据您的描述,看起来您需要:

 echo "start process $(date -u)" | tee -a "$logfilename.txt" | jq . >> "$logfilename.json"

等等。

感谢您修复了管道问题,现在tee正在向jq发送回显文本。下一步是使用jq过滤器将文本转换为json。再次感谢您,新的问题开启了对初始jq过滤器选项的帮助。