Tail
tail 是否讀取整個文件?
如果我想要
tail
一個 25 GB 的文本文件,該tail
命令會讀取整個文件嗎?由於文件可能分散在磁碟上,我想它必須這樣做,但我不太了解這些內部結構。
不,
tail
不讀取整個文件,它會尋找到最後,然後向後讀取塊,直到達到預期的行數,然後它以正確的方向顯示行直到文件結束,並可能繼續監視文件,如果-f
使用該選項。但是請注意,
tail
如果提供了不可搜尋的輸入,則別無選擇,只能讀取整個數據,例如從管道讀取時。同樣,當被要求查找從文件開頭開始的行時,在支持時使用
tail -n +linenumber
語法或tail +linenumber
非標準選項,tail
顯然會讀取整個文件(除非被中斷)。