Ubuntu Linuxでは、テキストファイルを半分(または任意の割合)に分割する
あなたが処理しようとしている扱いにくいテキストファイルを持っているならば、特に我々がスプレッドシートにファイルをインポートしようとしているならば、それをセクションに分割することは時々処理時間を助けることができる。あるいは、ファイルから特定の行のセットを取り出したいだけの場合もあります。.
split、wc、tail、cat、grepを入力してください。 (sedとawkを忘れないでください)。 Linuxには、コマンドラインでテキストファイルを操作するための豊富なユーティリティセットが含まれています。今日のタスクでは、splitとwcを使います。.
まずログファイルを見てみましょう… .
> ls -l
-rw-r-r- 1 thegeek ggroup 42046520 2006-09-19 11:42 access.log
ファイルサイズは42MBです。それはちょっと大きいです…しかし、我々は何行を扱っていますか?これをExcelにインポートしたい場合は、65k行以下に抑える必要があります。.
wcユーティリティを使用してファイル内の行数を確認しましょう。これは「単語数」を表します。.
> wc -l access.log
146330 access.log
私たちは限界を超えています。これを3つのセグメントに分割する必要があります。これを行うにはsplitユーティリティを使います。.
> split -l 60000 access.log
> ls -l合計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
テキストファイルを3つの別々のファイルに分割しました。それぞれのファイルの行数は60000行未満です。最後のファイルには残りの金額が含まれています。あなたがこの特定のファイルを半分にするつもりなら、あなたはこれをしたでしょう:
> split -l 73165 access.log
そして、それだけです。.