BIXLERのログ

いろいろ記録します。

macOSで大量のフォルダを一度に作る方法(フォルダ名のテキストファイルとcatコマンドを使った方法)

macOSで大量のフォルダを作成する方法の一つを以下に記載します。簡単に記載すると、

  1. フォルダ名の一覧を作成
  2. フォルダ名の一覧をテキストファイルで用意
  3. ターミナルで cat フォルダ名一覧.txt | xargs mkdir を実行

のような流れになります。

実際の例を以下に記載します。

0. やりたかったこと

東京証券取引所に上場している企業の銘柄コードごとにフォルダを作成する。

1. フォルダ名の一覧を作成

日本取引所のホームページにある東証上場銘柄一覧を加工してフォルダ名の一覧を作成しました。

 

東証上場銘柄一覧

東証上場銘柄一覧(2021年3月末)

フォルダ名は「銘柄コード_銘柄名_市場を表すコード」にすることにします。市場を表すコードは、市場・商品区分から変換しました。(例:市場第一部→T1)

ダウンロードした一覧にはETFなども含まれているので、それらをカテゴリなどを使ってデータを削除し、株式のみの一覧を別シートに作成しました。

次に、市場を表すコードの列を追加し、市場・商品区分からif関数で変換しました。

銘柄コードと銘柄名、市場を表すコードを&でつなぎ合わせ、フォルダ名の一覧の元データが完成です。

銘柄コード銘柄名

フォルダ名の一覧の元データ(赤枠)
2. フォルダ名の一覧をテキストファイルで用意

Launchpadを開き、その他の中にあるテキストエディットを開きます。 ファイル選択のためのFinderが表示されたら、左下段にある新規書類をクリック。

macOSテキストエディットアプリ

テキストエディットアプリ

名称未設定というファイルが立ち上がったら、出力の設定をテキストファイルに変更します。テキストエディットのアプリケーションメニュー -> フォーマット -> 標準テキストにする をクリックします。

標準テキストにする

標準テキストにする

そうすると、テキストエディタのタイトル部分の表示が変わり、.txtファイルとして保存できるようになります。 

テキストエディットのタイトルが変わる

タイトルが変わる

ここに1.のステップで作成したフォルダ名の一覧を貼り付けます。Numbersの列を丸ごとコピーして、テキストエディットに貼り付けます。

情報の貼り付け

フォルダ名の一覧を貼り付けた後

名前をつけて保存します。今回は SecCodeNameList.txt というファイル名にしました。


3. ターミナルで cat フォルダ名一覧.txt | xargs mkdir を実行

フォルダを一度に作成する場所に SecCodeNameList.txt を移動します。私の場合は、04_Projectフォルダの下にあるFoldersというフォルダの中に移動しました。

ターミナルを起動して対象のフォルダに移動します。

次に cat SecCodeNameList.txt | xargs mkdir を実行します。

ターミナルcatコマンド

ターミナルの操作

そうすると作成したい名前のフォルダがズラリと現れます。

catコマンド実行結果

実行結果

後日やりたいことが変わってしまったため、このフォルダは不要になってしまいまいた。しかし、手作業でやったら途方もない時間がかかったであろう作業を効率的に行えたことは、とても良い経験になりました。以上です。