今天某個專案的資料有些問題,需要查詢日志看看具體的情況
結果在執行
cat ***.log |grep "關鍵字" 命令后包如下錯誤:
grep: memory exhausted
思路1: 既然提示 記憶體問題,是不是日志檔案太大了, 用 du -sh * 命令查看 后檔案也就 300M
思路2: 是不是系統記憶體不足, free -m 查看記憶體后 也正常還有好幾個G
最后不經意 在 執行命令: ll 后 發現一個現象

檔案只有,1011M 但是 ll串列檔案詳細資訊顯示的 卻很大,就是這個導致 了 grep: memory exhausted
那怎么解決呢?
在知乎找到了解決的方案:
原因
這種現象的原因是由于在 nohup 重定向輸出啟動時采用了 ">" 清空重定向的方式,而不是 ">>" 追加重定向的方式
通過修改啟動檔案的 nohup 重定向輸出方式為追加
解決:
# nohup ./****.sh >> nohup.out 2>&1 &
# echo "" > nohup.out
修改啟動組態檔后,重啟命令 再次 使用ll 查看檔案大小正常, cat命令也可以使用了
原文:
https://zhuanlan.zhihu.com/p/396797089
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/472240.html
標籤:其他
