【Linux】ファイルの行数をカウントし、行数指定でファイル分割する方法。
Linux のコマンドを使って、ファイルの行数をカウントし、行数を指定してファイルを分割したときのメモです。
ファイルの行数をカウント(wc コマンド)
Linux でファイルの行数をカウントするには「wc」コマンドを用います。
今回は CSVファイル の行数をカウントしました。
1 |
% wc file_name.csv |
結果は以下のように出力されます。
2533350 2533350 173407888028 file_name.csv
3つ出力されるのですが、左から 対象ファイルの「行数」「単語数」「バイト数」を表しています。
この例だと、2533350 行とわかりました。
行数を指定してファイルを分割(split コマンド)
Linux でファイルを分割するには「split」コマンドを用います。
分割する方法は色々あるのですが、今回は行数を指定して分割しました。
行数を指定するには「-l」オプションを付けます。
そして、分割したファイル名に数字で3桁の連番をつけるには、「-d」オプションを付けます。
例えば、20万行で分割する場合は、以下のようになります。
1 2 3 |
% split -l 200000 -d 入力ファイル名 ./出力ディレクトリ名/出力ファイル名_ % split -l 200000 -d input_file_name.csv ./output_dir_name/output_file_name_ |
さらに、出力ファイル名に拡張子(.csv)を付けるには、末尾に「-additional-shuffix=.csv」オプションを付けます。
1 |
% split -l 200000 -d input_file_name.csv ./output_dir_name/output_file_name_ --additional-suffix=.csv |
関連記事
-
【Linux】ファイルの文字コードを調べる方法
Linux でファイルの文字コードを調べる必要があったので、その時のメモです。 いくつか方法が
-
【WSL】Windows10 に Linux(Ubuntu) を入れてみた。
最新の Windows10 環境であれば、簡単に Linux 環境を構築できるということで、試してみ
-
【Linux】WinSCP で Windows からファイルをコピーする方法。
今回は、WinSCP というソフトを使って、Windows から GUI で Linux のサーバに
-
大量のテキストファイルを圧縮して Windows から Linux へコピーして解凍してみた。
大量のテキストファイルを Windows から Linux にコピーする必要があり、最初はそのまま
-
【Linux】cp コマンドでディレクトリごとコピーし、ファイルの上書き確認されないようにする方法
Linux で cp コマンドを使って、ディレクトリごとコピーし、同一ファイル名があった場合に上書き
-
【Linux】文字化け対策に unar のインストールを試みた。
Windows で圧縮したファイルを Linux で解凍すると、文字化けが起こってしまいます。文字化
-
【Linux】指定ディレクトリ以下のファイルの内容を一括置換する方法
簡単なウェブサイトを Perl 作っていて、開発環境が Windows で、公開する環境が Linu
-
【Linux】ファイルの文字コードを一括変換する方法|EUC-JP ⇒ UTF-8
Linux で、あるディレクトリ内のファイルの文字コードを EUC-JP から UTF-8 に一括変
-
【Linux】SSH を切断した後でも Python を実行し続ける方法|nohub
今回、Linux のサーバに Windows から TeraTerm で SSH 接続し、Pytho
-
【Linux】 ファイルの重複した行を削除して、ファイルを結合する方法。
大容量の CSV ファイルの重複した行を削除して、ファイルを結合する処理を行ったときのメモです。