亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對于cat grep這類linux命令,如果操作一個大文件 會不會占用很大的內存?

對于cat grep這類linux命令,如果操作一個大文件 會不會占用很大的內存?

忽然笑 2023-04-15 17:13:01
下午的時候有個同學問:他們服務器有一個5G的日志文件,如何從中截取出10.5-11.18的日志另一個文件日志文件有規范的時期格式,類似于web服務器日志。
查看完整描述

2 回答

?
DIEA

TA貢獻1820條經驗 獲得超3個贊

用sed好了,sed是按行處理的,不會將整個文件加載到內存中,可以放心使用
要切出從2012-02-09到2012-09-10的所有數據行,(假設你的日志文件以yyyy-MM-dd的日期格式開頭)只需要:

sed -n '/^2012-02-09/,/^2012-09-10/p' whole.log > part.log


查看完整回答
反對 回復 2023-04-19
?
汪汪一只貓

TA貢獻1898條經驗 獲得超8個贊

無論怎么樣你都必須使用某一個程序把這個文件讀出來,并且用一定的規則來加以過濾。在Linux中,使用cat和grep對文件進行操作已經可以說是最經濟合理的了。占用一定的系統資源是肯定的,具體的話跟你使用的cat,grep以及linux內核都有一定關系,所以可能會略有不同。一般不要在系統里出現那么大的日志文件,最好在一開始就做好日志的大小限制以及合理的日志轉儲和備份。

查看完整回答
反對 回復 2023-04-19
  • 2 回答
  • 0 關注
  • 775 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號