我正在编写一个安装程序脚本,需要在sudo
我在AWS RedHat实例上测试它时运行它,所以不能直接使用root
。我想将日志写入文件以及屏幕上。没有什么比这更容易了,
我可以去老上学>> /tmp/Solr_Install.log 2>&1
并在后台开始尾部处理:tail -f installer.log &
这个解决方案往往会在屏幕上复制或增加三倍,所以我选择了一个T恤 - 总计解决方案。
只需使用强大的力量,2>&1 | tee -a /tmp/Solr_Install.log
使用此解决方案,我失去了我的sudo权限,脚本失败了。
问题:为什么尾部显示相同的线2-3次?(它与tail -f
显示最后10行的事实有关吗?)
这可以以某种方式修复吗?
我开球的时候为什么会失去我的sudo?
这可以避免吗?
有没有其他方法可以同时将日志材料放入文件和屏幕上?
也许这可能是符合您需求的情况unix.stackexchange.com/questions/61931 / ...
—
Echoes_86
Echoes_86,我需要请求你的原谅。我是双重检查,你的解决方案,技术上,@ BatchyX解决方案的工作原理。我仍然不知道为什么我失去了我的sudo mojo,但是嘿,至少我有一个有效的解决方案。
—
Lefty G Balogh 2017年
我很高兴你找到了解决方案。对我来说,这种方法(我从你的问题中理解的)
—
回声_86 2017年
exec > >(tee "/tmp/Solr_Install.log") 2>&1
对你来说是最好的。