Sadaliet teksta failu uz pusi (vai jebkuru procentu) Ubuntu Linux
Ja jums ir sarežģīts teksta fails, kuru mēģināt apstrādāt, sadalīšana sadaļās dažkārt var palīdzēt apstrādāt laiku, īpaši, ja mēs importēsim failu izklājlapā. Vai arī, iespējams, vēlaties no faila vienkārši ielādēt noteiktu līniju kopu.
Ievadiet sadalīšanu, wc, asti, kaķi un grep. (neaizmirstiet sed un awk). Linux satur bagātīgu utilītu kopumu, lai strādātu ar teksta failiem komandrindā. Mūsu uzdevumam mēs izmantosim dalīto un wc.
Vispirms mēs apskatīsim mūsu žurnāla failu ... .
> ls-l
-rw-r-r- 1 thegeek ggroup 42046520 2006-09-19 11:42 access.log
Mēs redzam, ka faila lielums ir 42MB. Tas ir diezgan liels… bet cik daudz rindu mēs nodarbojamies? Ja mēs to gribējām importēt programmā Excel, mums tas būtu jāsaglabā mazāk nekā 65 000 rindu.
Pārbaudīsim failu rindu skaitu, izmantojot wc utilītu, kas apzīmē “vārdu skaitu”.
> wc -l access.log
146330 access.log
Mēs esam pāri mūsu robežai. Mums tas būs jāsadala 3 segmentos. Lai to paveiktu, mēs izmantosim sadalīto lietderību.
> split-60000 access.log
> ls-lkopā 79124
-rw-rw-r- 1 thegeek ggroup 40465200 2006-09-19 12:00 access.log
-rw-rw-r- 1 thegeek ggroup 16598163 2006-09-19 12:05 xaa
-rw-rw-r- 1 thegeek ggroup 16596545 2006-09-19 12:05 xab
-rw-rw-r- 1 thegeek ggroup 7270492 2006-09-19 12:05 xac
Mēs tagad esam sadalījuši mūsu teksta failus 3 atsevišķos failos, katrs no tiem satur mazāk nekā 60000 rindas, kas, šķiet, bija labs numurs. Pēdējais fails satur atlikušo summu. Ja jūs pēkšņi samazinātu šo konkrēto failu, jūs to būtu izdarījuši:
> split -l 73165 access.log
Un tas viss ir ar to.