我使用travis-ci从头开始构建版本7.8。在构建期间,travis-ci抛出错误,因为日志文件大于4兆字节。你可以在lfs-auto, build #15
看到现在,我想将所有数据从stdout重定向到/ dev / null 以减小日志文件的大小。以正常方式,人们对每个命令使用重定向操作为 dev / null 。但这样会使shell脚本变得太长而且难以阅读
任何机构都有想法解决这些问题吗?
问题解决了!感谢每个机构都有意见
我选择解决方案 exec> / dev / null 因为该命令将所有输出从std重定向到/ dev / null而没有其他操作。在这种情况下, exec> / dev / null 比 script-file>简单,易于编辑/ dev / null 或 {command,...}>的/ dev / null的
解决问题重复
有一些评论,此问题的内容与How do I redirect the output of an entire shell script within the script itself?和how to redirect output of multiple commands to one file
相同我认识到我的问题与How do I redirect the output of an entire shell script within the script itself?相同,但我的问题更明确,更短
我需要更多评论来解决两个案例中的重复问题
答案 0 :(得分:0)
虽然实现目标的方法不止一种,但我建议您编辑构建脚本以对命令进行分组。将大量命令包装在大括号中允许您将列表中的所有命令重定向到同一位置。例如:
{
echo foo
echo bar
echo baz
} > /dev/null
虽然在技术上并不相同,但从实用的角度来看,这将提供类似的结果,将每个命令分别重定向到 / dev / null 。