1
为了确定我的安装是否有我应该注意到的错误,我在文件上使用grep命令并使用tee写入文件,因为我需要提升权限。grep和tee在安装过程中识别错误
sudo grep -inw ${LOGFOLDER}/$1.log -e "failed" | sudo tee -a ${LOGFOLDER}/$1.errors.log
sudo grep -inw ${LOGFOLDER}/$1.log -e "error" | sudo tee -a ${LOGFOLDER}/$1.errors.log
问题是即使grep没有找到任何东西,该文件也会被创建。 有没有什么办法可以创建文件,只有当grep找到了匹配项?
... | sudo awk "{print; print \$0 >> \"errors.log\";}"
但AWK的这些特征是很少使用:
感谢
非常感谢。另外对于用grep多词搜索的建议:) – user1902346
谢谢。多次搜索完成:sudo grep -E“failed | error”-inw $ {LOGFOLDER}/$ 1.log并且工作得很好。 awk命令返回错误信息:sudo grep -E“failed | error”-inw $ {LOGFOLDER}/$ 1.log | sudo awk“{print; print $ 0 >>'$ {LOGFOLDER}/$ 1.errors.log';}” 返回:awk:cmd。行:1:{print; print -bash >>'errors.log';} awk:cmd。行:1:表达式 awk:cmd中的^ invalid char'''。行:1:{print; print -bash >>'errors.log';} awk:cmd。行:1:^语法错误 – user1902346
引号需要转义:'“{print; print \ $ 0 >> \”$ {LOGFOLDER}/$ 1.errors.log \“;}” – gudok