cooiPiszkálta a csőrömet, hogy hogyan lehetne "belenézni" az ilyen nagy szöveges fájlokba. A Gedit, de szerintem bármelyik egyszerű szövegszerkesztő belepusztul. Nem is a szövegszerkesztő miatt, hanem leghamarabb azért, mert kifogy a memóriából a gép. Teszem azt 4 GB-nyi RAM-ba beolvasni 20 GB-nyi adatot... érdekes lenne :-D
Viszont találtam (terminálos) megoldást, igaz nem volt kedvem optimalizálni, vagy megkeresni a legjobb megoldást. A wc és a split segítségével megoldható az, hogy belenézz egy ilyen méretes fájlba, illetve egy darabkájába (végignézni elég sokáig tartana több milliónyi sort :-D).
Egy példa: a wc segítségével megszámoltatod a sorokat egy ilyen fájlban, mondjuk 4,5 millió+ az eredmény.
wc -l kern.log
4527000
Ezután a split segítségével darabolod. A split tud sorok számával is dolgozni, tehát megadhatod neki, hogy hány sort vegyen egy darabba, és e szerint szabdalja szét a forrásfájlt.
split --lines=500000 -d kern.log
Az eredmény lesz tíz fájl, x00...x09 néven. Ebből az utolsó már csak 27000 sort fog tartalmazni, amit már esetleg meg is lehet nézni, de ha nagy, még lehet tovább szabdalni.
Nem tudtam kipróbálni (nincs ilyen méretű fájlom, csak 1,5 milliónyi sorral szórakoztam), de ha nagyon nagyra szabod a darabok méretét, akkor szerintem a split is belefut a memóriaelfogyás problémájába (habár eszébe sincs az egészet egyszerre beolvasni, csak apránként teszi). Ha nincs ilyen (memória)gondja, akkor lehet egy olyat is, hogy: split --lines=4520000 -d kern.log. Ekkor a második fájlod már csak az utolsó 7000 sort jelenti.
Mindenképpen kell még egy annyi hely, mint az eredeti fájl. Tehát csak szelektív takarítás után tudod ezt meglépni (mivel nem csak egy nagyméretű fájlod van, szerintem megoldható, hogy az egyiket megtartod, és belenézel, hogy mi hizlalta fel.)