我正在开发一个项目,它由一个自动脚本运行。该脚本包含以下行:
./executable ./dev | grep -i "GET.*index.*200" > ./dev/logs/log1
我的代码写入stdout,但它永远不会写入log1。如果我改变它并删除grep命令,它写得很好。任何帮助都会受到赞赏,因为我似乎并不理解grep。
答案 0 :(得分:1)
您可以尝试使用命令重命名脚本“executable”中的std输出:
exec > ./dev/logs/log1
exec 2> ./dev/logs/errlog1
所以,现在不需要使用“>”在行
./executable ./dev | grep -i "GET.*index.*200"
另外,我建议您在脚本中仅使用绝对路径。
PS。 [offtop]我还不能写评论(声誉不够)。