GCP

GCS(Google Cloud Storage)上の複数ファイルを一括で取得し行数を数えてみた(Windows版)

今回は、Windows端末の仮想マシン上で、GCP(Google Cloud Platform)内のGCS(Google Cloud Storage)上のファイルを一括で取得し、各ファイルの行数を数えCSVファイルに出力してみたので、その方法について共有する。

前提条件

GCP(Google Cloud Platform)のアカウントを作成し、ログイン済であること。また、GCP上にWindows端末の仮想マシンを作成済であること。その手順は以下を参照のこと。

GCP(Google Cloud Platform)のアカウントを作成してみたGCP(Google Cloud Platform)とは、Google社が提供する、企業や個人など不特定多数のユーザに対し、インターネッ...
GCP(Google Cloud Platform)でSQL Server搭載済の仮想マシンを作成してみた今回は、GCP(Google Cloud Platform)環境で、SQL Server搭載済の仮想マシンを作成したので、その手順につい...

さらに、以下のようにGCS(Google Cloud Storage)上にファイルを配置済であること。
GCS上のファイル

なお、GCS(Google Cloud Storage)上にファイルを配置する手順については、以下を参照のこと。

GCP(Google Cloud Platform)でGCS(Google Cloud Storage)から仮想マシンにファイル転送を行ってみた今回は、GCP(Google Cloud Platform)で、GCS(Google Cloud Storage)から仮想マシンにファイ...



やってみたこと

  1. gsutil lsコマンドによるファイルの確認
  2. gsutil cpコマンドによるファイルのコピー
  3. 複数ファイルのファイル名と行数の出力

 

gsutil lsコマンドによるファイルの確認

1) 以下のように、「gsutil ls gs://(バケット名)/ファイルパス」で、GCS(Google Cloud Storage)上のファイルを確認することができる。
gsutil_lsコマンド_1
なお、ファイルパス中の「*」は、0文字以上の任意の文字列を表す。

2) 以下のように、「gsutil ls -l gs://(バケット名)/ファイルパス」と「-l」オプションを付与すると、GCS(Google Cloud Storage)上のファイルのサイズや更新日時も確認することができる。
gsutil_lsコマンド_2



gsutil cpコマンドによるファイルのコピー

1) 以下のように、「gsutil cp gs://(バケット名)/ファイルパス .」で、GCS(Google Cloud Storage)上のファイルを、ローカル端末のカレントディレクトリ(.)にコピーすることができる。また、ファイルがコピーされたことの確認は「dir」コマンドで行える。
gsutil_cpコマンド_1
コピー後の各CSVファイルは、以下の通り。

それぞれ、GCS(Google Cloud Storage)上にコピーしたCSVファイルと同じ内容であることを確認している。
gsutil_cpコマンド_実行後ファイル1

gsutil_cpコマンド_実行後ファイル2 gsutil_cpコマンド_実行後ファイル3



複数ファイルのファイル名と行数の出力

1) 以下のようなbatプログラムを利用することで、カレントディレクトリ上の複数ファイルのファイル名と行数を、一括でCSV形式に出力することができる。
行数取得bat

2) 1)のプログラムを、行数を数えるCSVファイルと同じディレクトリに配置し実行すると、以下のように、それぞれのCSVファイル名と行数をカンマ区切りで出力できる。
行数取得2

3) 以下のように、1)のプログラムの実行結果を、別ファイルに出力することもできる。ファイルの出力内容は、「type」コマンドにて確認できる。
行数取得3

さらに、ファイルの出力内容をサクラエディタで確認した結果は、以下の通り。
読み込んだファイル内容