【2026年9月最新】Pythonのos.mkdirでフォルダを自動作成する方法|os.makedirsとの違い・エラー対処・業務自動化への活用まで

【2026年9月最新】Pythonのos.mkdirでフォルダを自動作成する方法|os.makedirsとの違い・エラー対処・業務自動化への活用まで

「Pythonでフォルダを作りたいけど、os.mkdirとos.makedirsって何が違うの?」「exist_okって何のオプション?」「そもそもエラーが出て止まる…」——この記事にたどり着いたあなたは、業務の中でPythonスクリプトを書いていて、ディレクトリ(フォルダ)作成でつまずいた経験があるはずです。

Pythonの標準ライブラリには、フォルダを作成するための関数が複数用意されています。代表的なものがos.mkdiros.makedirs、そしてより新しい書き方であるpathlib.Path.mkdir()です。似たような名前でも挙動は大きく異なり、使い分けを誤ると「二重にフォルダを作ろうとしてエラーで処理が止まる」「深い階層のフォルダが作れない」といったトラブルにつながります。

この記事では、2026年時点の最新のPython構文をベースに、os.mkdir・os.makedirs・pathlibの違いを実務目線で整理します。さらに、弊社(株式会社GENAI)がClaude Codeを使って日々のフォルダ管理・ファイル整理をどう自動化しているかという実データもあわせて紹介し、「コードを書かずに同じことを実現する方法」まで踏み込んで解説します。

代表菅澤 代表菅澤
エンジニアではない方向けに先に結論を言っておくと、今の時代、os.mkdirの文法を丸暗記する必要は正直ありません。Claude Codeに「案件ごとにフォルダを分けて」と日本語で頼むだけで同じことができます。ただ、裏側で何が起きているかを知っておくと、AIに指示を出すときの解像度が上がるので、この記事では両方お伝えします。
AI鬼管理山崎 AI鬼管理山崎
今日は「os.mkdirとos.makedirsのどちらを使うべきか」を明確に判断できるよう整理していきます。プログラミング未経験の方でも、最後まで読めば「フォルダ自動化」の全体像がつかめるはずです。

この記事を最後まで読むと、次の7つが明確になります。

✔️os.mkdirとos.makedirsの違いと、それぞれの正しい使いどころ
✔️exist_okオプションで「既にフォルダがある」エラーを防ぐ方法
✔️pathlib.Path.mkdir()という、より現代的な書き方との比較
✔️FileExistsError・FileNotFoundError・PermissionErrorという3大エラーの原因と対処法
✔️日付別・案件別フォルダを自動生成する実務的なコード例
✔️弊社GENAIの実運用データと、フォルダ管理を自動化した効果
✔️非エンジニアでもClaude Codeで同じことができる具体的な方法
AI社員AIKATA|月30万円の定額で御社の業務をまるごと巻き取ります(無料相談60分)御社が減らせる固定費は月いくらか|公式LINEで質問に答えるだけ(無料・約1分)
📌 この記事の結論
【2026年9月最新】Pythonのos.mkdirでフォルダを自動作成する方法|os.makedirsとの違い・エラー対処・業務自動化への活用まで
Pythonのos.mkdirでフォルダを作成する方法を徹底解説。os.makedirsとの違い、exist_okによるエラー回避、pathlibとの比較から、非エンジニアでもClaude Codeでフォルダ管理を自動化する方法まで、弊社の実運用データを交えて紹介します。

01 os.mkdirとは?基本の文法とできること Pythonの標準ライブラリosモジュールに含まれるフォルダ作成関数

os.mkdirは、Pythonの標準ライブラリであるosモジュールに含まれる関数で、指定したパスに1階層分のディレクトリ(フォルダ)を新規作成します。追加のインストールは不要で、Pythonをインストールした時点で最初から使える標準機能です。

📚 用語解説

osモジュール:Pythonに標準で組み込まれている、OS(オペレーティングシステム)とやり取りするための機能をまとめたライブラリ。ファイルやフォルダの作成・削除・パスの操作など、パソコンのファイルシステムを操作する処理はほぼこのosモジュール(または後述のpathlib)で行います。使うには先頭で import os と書くだけです。

業務システムの例えで言うと、os.mkdirは「新しい書類棚を1段だけ作る」機能です。棚がすでにある場所に新しい書類棚を作ろうとするとエラーになりますし、棚を置く土台となる部屋(親フォルダ)が存在しない場所には棚を作れません。この「1段しか作れない」という制約が、次章で紹介するos.makedirsとの決定的な違いになります。

1-1. 基本構文

os.mkdirの最小構成コード
import os

os.mkdir("reports")  # カレントディレクトリに reports フォルダを作成

たったこれだけで、スクリプトを実行した場所(カレントディレクトリ)にreportsという名前のフォルダが1つ作成されます。パラメータには文字列でフォルダ名(またはパス)を渡すだけのシンプルな設計です。

1-2. os.mkdirが向いているケース・向いていないケース

✔️向いている:あらかじめ親フォルダが存在することが分かっている、1階層だけのフォルダ作成
✔️向いている:「このフォルダが既に存在したらエラーで止めたい」という厳密なチェックをしたい場合
✔️向いていない:階層が深い(例:report/2026/09/のような3階層)フォルダを一括作成したい場合
✔️向いていない:フォルダの有無を毎回チェックするのが面倒で、あれば何もせず、なければ作りたい場合
💡 迷ったらまずここを確認

os.mkdirを使うかどうか迷ったら、「作りたいフォルダの1つ上の階層(親フォルダ)が、実行時点で必ず存在しているか」を自問してください。存在が保証できないなら、次章のos.makedirsを使うのが安全です。

AI鬼管理山崎 AI鬼管理山崎
os.mkdirは名前の通り「make directory(ディレクトリを作る)」の略ですが、実務では単体で使うシーンは意外と限られます。次のos.makedirsとセットで理解しておくと迷いません。

02 os.mkdirの使い方(基本・複数作成・権限指定) 実務で使う3パターンのコード例

ここからは実際のコード例を交えて、os.mkdirの具体的な使い方を見ていきます。

2-1. 基本的な使い方

基本形:1つのフォルダを作成
import os

# フォルダが存在しない前提で新規作成
os.mkdir("output")
print("outputフォルダを作成しました")

このコードを実行すると、カレントディレクトリにoutputフォルダが作成されます。すでにoutputという名前のフォルダやファイルが存在する場合は、FileExistsErrorという例外が発生してプログラムが止まります(詳しくは第5章で解説します)。

2-2. 複数のフォルダをまとめて作成する(ループ処理)

業務では「案件ごとにフォルダを分けたい」「部署名ごとにフォルダを用意したい」といったニーズがよくあります。この場合はPythonのループ処理(for文)と組み合わせます。

複数フォルダの一括作成
import os

folder_names = ["営業部", "経理部", "総務部", "開発部"]

for name in folder_names:
    os.mkdir(name)
    print(f"{name}フォルダを作成しました")

リスト(folder_names)に部署名を並べておき、for文で1件ずつos.mkdirに渡していくシンプルな構造です。ただし、このコードは途中で1つでもエラーが起きると処理全体が止まる点に注意が必要です。例えば「経理部」フォルダが既に存在していた場合、その時点でFileExistsErrorが発生し、「総務部」「開発部」は作成されません。

⚠️ ループ処理での注意点

複数フォルダを一括作成する処理は、途中で1つでも失敗すると残りが実行されずに止まります。業務で使う場合は、後述するtry-exceptによるエラーハンドリング、またはexist_ok(第3章)を併用して、失敗しても処理を継続できる設計にすることを推奨します。

2-3. mode引数でアクセス権限を指定する

os.mkdirには、第2引数としてmode(アクセス権限)を指定するオプションがあります。

modeでアクセス権限を指定
import os

# 8進数でパーミッション(アクセス権限)を指定
os.mkdir("secure_folder", mode=0o755)

📚 用語解説

パーミッション(アクセス権限):Linux/Mac系OSにおいて、ファイルやフォルダに対して「誰が読み書き・実行できるか」を制御する仕組み。0o755のような8進数の数値で「所有者は読み書き実行OK、他ユーザーは読み取りと実行のみOK」といった設定を表します。Windowsではこの引数はほぼ無視される点に注意してください。

業務システムで機密情報を扱うフォルダを作る場合など、アクセス権限を厳密に管理したいケースで使う引数です。ただし、Windows環境ではmode引数の効果が限定的であり、Linuxサーバー上で動くバッチ処理などでの利用が中心になります。

代表菅澤 代表菅澤
mode引数は、正直なところ多くの業務担当者が日常的に使う場面は多くありません。ただ「セキュリティを意識したフォルダ運用をしたい」という相談を受けることは増えていて、こうした細かい制御ができる点もPythonの強みの一つです。

03 os.makedirsの使い方(再帰作成・exist_ok) 深い階層のフォルダを一括作成する方法

os.makedirsは、os.mkdirの上位互換にあたる関数です。最大の違いは、親フォルダが存在しなくても、必要な階層をすべて自動で作成してくれる点にあります。

📚 用語解説

再帰的(さいきてき):ある処理を、自分自身や似た構造に対して繰り返し適用すること。os.makedirsの場合、「まず一番上の階層のフォルダがあるか確認し、なければ作る。次にその中の階層を確認し、なければ作る」という処理を、目的のフォルダに到達するまで繰り返します。この繰り返し処理のことを「再帰的に処理する」と表現します。

3-1. 再帰的にディレクトリを作成する

深い階層を一括作成
import os

# report フォルダも 2026 フォルダも 09 フォルダも、
# すべて存在しなくても一括で作成される
os.makedirs("report/2026/09")

このコードを実行すると、reportフォルダが存在しない場合はまずそれを作り、続けてreport/2026、最後にreport/2026/09と、必要な階層をすべて自動で作成してくれます。os.mkdirでこれを実現しようとすると、3回に分けてos.mkdirを呼び出す必要がありますが、os.makedirsなら1行で済みます。

3-2. exist_okでエラーを回避する

業務で最も頻繁に使うことになるのが、exist_okという引数です。

exist_ok=Trueでエラーを回避
import os

# すでにフォルダが存在してもエラーにならない
os.makedirs("report/2026/09", exist_ok=True)

📚 用語解説

exist_ok:os.makedirsに渡せる引数の一つ。デフォルト(False)では、作成しようとしたフォルダが既に存在する場合にFileExistsErrorが発生します。exist_ok=Trueを指定すると、既に存在していてもエラーにならず、何事もなかったかのように処理が続行されます。「フォルダがあればそのまま使い、なければ作る」という、業務で最も使う頻度の高い挙動です。

日次バッチ処理や定期実行スクリプトでは、「同じフォルダ作成処理を毎日実行する」ケースが非常に多くあります。exist_ok=Trueを付けないと、2日目以降は必ずFileExistsErrorで処理が止まってしまうため、繰り返し実行するスクリプトでは実質必須のオプションと言えます。

💡 迷ったらexist_ok=Trueを付ける

業務用スクリプトでフォルダ作成処理を書く場合、基本的には os.makedirs(path, exist_ok=True) の形で書いておけば、階層の深さも「既にあるかどうか」も気にせず安全に実行できます。特別な理由がない限り、これが実務での標準形と考えて問題ありません。

🏆
VERDICT
Claude Code に軍配
実務での基本形は os.makedirs(path, exist_ok=True) の一択。os.mkdirを単体で使う場面は限定的。
AI鬼管理山崎 AI鬼管理山崎
弊社の社内スクリプトでも、フォルダ作成処理はほぼ全て os.makedirs に exist_ok=True を付けた形で統一しています。迷う時間自体が無駄なので、最初からこの形をテンプレート化しておくのがコツです。
AI社員AIKATA|月30万円の定額で御社の業務をまるごと巻き取ります(無料相談60分)御社が減らせる固定費は月いくらか|公式LINEで質問に答えるだけ(無料・約1分)

04 pathlib.Path.mkdir()という現代的な書き方 osモジュールとpathlibモジュール、今から書くならどちらか

ここまでosモジュールのmkdir・makedirsを解説してきましたが、近年のPythonではpathlibモジュールを使った書き方も広く使われています。「これから新しくコードを書くならpathlibが良い」という声も多いため、両者の違いを整理しておきます。

📚 用語解説

pathlib:Python 3.4以降で標準ライブラリに追加された、ファイルパスをオブジェクトとして扱うモジュール。文字列としてパスを操作するosモジュールに対し、pathlibではPath("report") / "2026" / "09"のように直感的にパスを組み立てられ、Windows・Mac・Linuxの違い(区切り文字の違いなど)も自動で吸収してくれます。

4-1. pathlibでのフォルダ作成コード

pathlibでの書き方
from pathlib import Path

# osモジュールのos.makedirs(path, exist_ok=True)に相当
Path("report/2026/09").mkdir(parents=True, exist_ok=True)

pathlibでは、parents=Trueが「親フォルダも含めて再帰的に作成する」というos.makedirs相当の指定、exist_ok=Trueが「既に存在してもエラーにしない」という指定になります。osモジュールとほぼ同じ機能を、より読みやすいオブジェクト指向の書き方で実現できます。

項目os.mkdir / os.makedirspathlib.Path.mkdir()
登場時期Python黎明期からの標準機能Python 3.4以降
書き方文字列でパスを扱うPathオブジェクトでパスを扱う
深い階層の作成os.makedirsを使う必要ありparents=Trueを付けるだけ
既存フォルダの許容exist_ok=Trueを指定exist_ok=Trueを指定(同じ引数名)
OS差異の吸収意識する必要がある場面あり自動で吸収されやすい
他のパス操作との連携os.path関数を別途呼ぶ同じPathオブジェクトでファイル存在確認・拡張子取得なども可能

4-2. 結局どちらを使うべきか

既存の業務スクリプトやチームの既存コードがos.mkdir・os.makedirsで統一されているなら、無理に書き換える必要はありません。一方で、これから新しくスクリプトを書く場合は、pathlibを使う方が総合的に扱いやすいというのが実務的な結論です。ファイルの存在確認や拡張子の取得など、フォルダ作成以外のパス操作もまとめてPathオブジェクトで扱えるため、コード全体がすっきりします。

🏆
VERDICT
Claude Code に軍配
新規で書くならpathlib、既存コードの保守ならosモジュールのままでOK。どちらも「知っている」ことに価値がある。
代表菅澤 代表菅澤
「結局どっちを覚えればいいの?」とよく聞かれますが、正直に言うと、非エンジニアの方が両方を暗記する必要はないと思っています。大事なのは「フォルダ作成には複数の書き方があり、それぞれ得意なことが違う」と知っておくことで、実際のコードはAIに任せてしまって問題ありません。

05 よくあるエラーと対処法 フォルダ作成でつまずく3大エラーの原因と解決策

フォルダ作成の処理でつまずくポイントは、実はある程度パターン化されています。ここでは代表的な3つのエラーと、それぞれの対処法を整理します。

5-1. FileExistsError:既にフォルダが存在する

エラーメッセージの例
FileExistsError: [Errno 17] File exists: 'report'

📚 用語解説

FileExistsError:作成しようとしたフォルダ(またはファイル)が、既に同じ名前で存在している場合に発生する例外(エラー)。os.mkdirやos.makedirs(exist_ok=Falseの場合)で最も頻繁に遭遇するエラーです。

対処法はシンプルで、exist_ok=Trueを指定するか、事前にos.path.exists()でフォルダの有無をチェックしてから作成するかのどちらかです。繰り返し実行するスクリプトでは、前者(exist_ok=True)の方が圧倒的にシンプルで推奨されます。

5-2. FileNotFoundError:親フォルダが存在しない

エラーメッセージの例
FileNotFoundError: [Errno 2] No such file or directory: 'report/2026/09'

これは、os.mkdirを使って「report/2026/09」のような深い階層のフォルダを、親フォルダ(report、report/2026)が存在しない状態で一気に作ろうとしたときに発生します。第1章で触れた通り、os.mkdirは1階層しか作れないため起きるエラーです。対処法は、os.makedirsに切り替えることです。

5-3. PermissionError:アクセス権限が足りない

エラーメッセージの例
PermissionError: [Errno 13] Permission denied: '/system/protected'

OS側の設定で、書き込み・フォルダ作成が許可されていない場所に対してフォルダを作ろうとすると発生します。業務システムのサーバー上で、管理者権限が必要なディレクトリに書き込もうとした場合などによく起きます。対処法としては、書き込み権限のある場所(自分のユーザーフォルダ配下など)にパスを変更するか、実行権限自体を見直す必要があります。

✔️FileExistsError → exist_ok=True を付ける、または事前に存在チェックする
✔️FileNotFoundError → os.mkdirではなくos.makedirs(またはpathlibのparents=True)を使う
✔️PermissionError → 書き込み権限のある場所にパスを変更する、実行ユーザーの権限を確認する
⚠️ try-exceptで想定外のエラーも拾う

業務用スクリプトでは、上記3つ以外の予期しないエラーが発生する可能性もゼロではありません。try: ... except Exception as e: print(f"エラー: {e}")のように囲んでおくと、スクリプト全体が突然落ちるのを防ぎ、原因の特定もしやすくなります。

AI鬼管理山崎 AI鬼管理山崎
エラーメッセージは一見怖く見えますが、実は「何が原因か」をかなり丁寧に教えてくれています。慣れないうちはエラー文をそのままAIに貼り付けて『これ何のエラー?』と聞くだけで、驚くほど早く解決できます。

06 業務での実践例:日付別・案件別フォルダの自動作成 よくある業務シーンでのコード例2パターン

ここまでの基礎知識を踏まえて、実際の業務でよく使われるフォルダ自動作成のパターンを2つ紹介します。

6-1. 日付別フォルダを自動作成する

日報・レポート・ログファイルなどを日付ごとにフォルダ分けして保存したい場合の定番パターンです。

実行日の年月日フォルダを自動生成
import os
from datetime import datetime

today = datetime.now()
folder_path = f"reports/{today.year}/{today.month:02d}/{today.day:02d}"

os.makedirs(folder_path, exist_ok=True)
print(f"{folder_path} を作成しました")

このスクリプトを毎朝実行すれば、reports/2026/09/15のような形で、その日専用のフォルダが自動的に用意されます。年・月・日ごとにフォルダが分かれるため、あとから特定の期間のデータを探す作業が格段に楽になります。

6-2. 案件別・顧客別フォルダを自動作成する

営業や案件管理では、案件名や顧客名ごとにフォルダを分けて、その中に見積書・契約書・議事録などをまとめて保存したいケースが多くあります。

案件ごとに書類種別フォルダをまとめて作成
import os

projects = ["A社_Webリニューアル", "B社_業務システム導入", "C社_AI活用支援"]
subfolders = ["見積書", "契約書", "議事録", "請求書"]

for project in projects:
    for sub in subfolders:
        os.makedirs(f"projects/{project}/{sub}", exist_ok=True)

print("全案件のフォルダ構成を作成しました")

二重のfor文(ネストしたループ)を使うことで、案件数×書類種別数のぶんだけ、一気にフォルダ構成を作成できます。案件が10件、書類種別が4種類あれば、合計40個のフォルダが数秒で用意される計算です。手作業でこれをやろうとすると、フォルダを右クリックして「新規作成」を繰り返す単純作業に数十分かかることも珍しくありません。

案件リストを
用意する

Excelやリストで
案件名を管理
書類種別を
定義する

見積書・契約書
議事録など
スクリプトを
実行する

os.makedirsで
一括生成
フォルダ構成が
完成

数秒で
統一された構造に
💡 フォルダ構成をテンプレート化するメリット

案件ごとに毎回手作業でフォルダを作ると、担当者によって構成がバラバラになりがちです。スクリプトでフォルダ構成をテンプレート化しておけば、誰が実行しても同じ構造のフォルダが作られるため、後任者への引き継ぎや、社内での書類検索が格段にスムーズになります。

代表菅澤 代表菅澤
こうした「毎回同じ手順の繰り返し作業」こそ、AIや自動化の効果が一番わかりやすく出る領域です。1回あたりは数分の作業でも、月に何十回と発生する業務なら、積み上げると相当な時間になります。
AI社員AIKATA|月30万円の定額で御社の業務をまるごと巻き取ります(無料相談60分)御社が減らせる固定費は月いくらか|公式LINEで質問に答えるだけ(無料・約1分)

07 【独自データ】GENAI社内のフォルダ自動化実運用 Claude Codeでファイル・フォルダ管理をどこまで自動化しているか

ここでは、弊社(株式会社GENAI)が実際にどのようにフォルダ・ファイル管理を自動化しているかを、実データベースで公開します。

7-1. 弊社の契約プランと運用体制

項目内容
契約プランClaude Max 20x(月$200 / 約30,000円)
利用開始2025年後半〜
利用部署経営・営業・広告・開発・経理・秘書業務・個人業務まで全社
フォルダ関連業務の主な用途案件別フォルダ生成、記事・レポート格納構造の管理、日次バックアップ整理

弊社では、本記事で扱ったようなos.mkdir・os.makedirsのコードを人間が毎回手書きすることはほとんどありません。「このフォルダ構成で案件フォルダを作って」とClaude Codeに自然言語で指示するだけで、必要なPythonスクリプトの生成から実行までを任せています。

7-2. 業務領域別の削減時間(肌感ベース・2026年9月時点)

業務領域主な用途概算削減時間
営業提案書・見積・顧客別資料の自動生成週20時間 → 週2時間
広告運用週次レポート・CPA分析・配信内容調整週10時間 → 週1時間
ブログ記事SEO記事執筆・リライト・内部リンク最適化1本8時間 → 1本1時間
経理請求書チェック・経費仕訳・Freee連携月40時間 → 月5時間
秘書業務日報生成・議事録・スケジュール調整日2時間 → 日15分
開発・ファイル管理フォルダ構成の自動生成、スクリプト書き捨て都度数時間削減
個人業務メール下書き、雑務タスク整理日1時間 → 日10分
⚠️ 数値の注意書き

上記は弊社の肌感ベースの数値であり、業種・業態・担当者のスキルによって削減時間は変動します。あくまで「Claude Codeを全社で使い倒すとどの程度まで自動化できるか」の参考情報としてご覧ください。「完全自動化」「ゼロになった」という意味ではなく、レビューや微調整は引き続き人間が行っています。

7-3. フォルダ管理を自動化して見えた変化

弊社でフォルダ・ファイル管理をスクリプト化・自動化する前は、案件ごとのフォルダ構成が担当者によって微妙に異なり、「この書類どこにあるんだっけ」という検索コストが地味に積み重なっていました。Claude Codeに「このプロジェクトの標準フォルダ構成で新規作成して」と頼むだけで統一された構造が数秒で用意されるようになってからは、この種の探し物コストがほぼゼロになった実感があります。

AI鬼管理山崎 AI鬼管理山崎
地味な話に聞こえるかもしれませんが、「フォルダ構成が統一されている」だけで、新しく入ったメンバーへの引き継ぎコストがかなり下がります。属人化しがちな部分こそ、自動化・仕組み化の効果が大きいと感じています。

08 【独自】非エンジニアのための選択肢 ── コードを書かず任せる os.mkdirの文法を覚えなくても同じことができる時代

ここまで、os.mkdir・os.makedirs・pathlibの文法を細かく解説してきました。ただ最後に、非エンジニアの経営者・管理職の方に伝えたいのは、「この文法を暗記する必要は、今の時代はほとんどない」という事実です。

📚 用語解説

Claude Code:Anthropicが提供する、チャットで指示するだけでファイル操作・コード生成・スクリプト実行まで自律的に行うAIエージェントツール。「このフォルダをこう整理して」といった日本語の指示だけで、裏側で必要なPythonコード(本記事で紹介したos.makedirsなど)を自動生成して実行してくれます。

例えば、本記事の第6章で紹介した「案件別・顧客別フォルダの自動作成」も、Claude Codeであれば次のように話しかけるだけで実現できます。

Claude Codeへの指示例(日本語のチャットのみ)
「projectsフォルダの下に、A社・B社・C社の案件フォルダを作って、
それぞれの中に見積書・契約書・議事録・請求書のフォルダも作っておいて」

この一文を送るだけで、Claude Codeは裏側で本記事の第6章と同じようなPythonスクリプトを自動生成し、実行し、フォルダが正しく作成されたかまで確認して報告してくれます。ターミナル(黒い画面)を開く必要も、os.mkdirとos.makedirsのどちらを使うべきか迷う必要もありません。

やりたいことを
日本語で伝える

「案件フォルダを
作って」など
Claude Codeが
コードを生成

os.makedirs等を
自動選択
実行結果を
確認・報告

作成されたか
自動チェック
完了
人間はコードを
書かなくてよい

8-1. それでも文法を知っておく価値はあるのか

「コードを書かなくていいなら、この記事で解説した内容は不要なのでは?」と思われるかもしれません。しかし、実務ではまったく逆で、裏側の仕組みを知っている人ほど、AIへの指示が的確になる傾向があります。「os.makedirsならexist_okを付けないと二重実行でエラーになる」と知っていれば、「毎日実行しても壊れないようにして」という一言を指示に添えることができ、AIの出力がより実務に即したものになります。

💡 非エンジニアにおすすめの学び方

os.mkdirやos.makedirsの文法を丸暗記する必要はありません。「フォルダ作成には複数の書き方があり、繰り返し実行する場合はexist_okという配慮が必要」という考え方の骨組みだけ覚えておけば十分です。あとは実際のコードをClaude Codeに書かせながら、必要に応じてこの記事に戻ってくる使い方がおすすめです。

✔️ターミナルを開かず、Claude Codeのデスクトップ版のチャットUIから指示できる
✔️「このフォルダ構成をテンプレート化して」と頼めば、毎回同じ構造で自動生成される
✔️既存フォルダがあっても壊れないか(exist_okの考え方)を指示に含めると精度が上がる
✔️エラーが出た場合も、エラーメッセージをそのまま貼り付ければ原因を解説してくれる
代表菅澤 代表菅澤
弊社では「AI鬼管理」というサービスで、こうしたフォルダ管理も含めた業務自動化の設計から伴走までを支援しています。文法を覚える時間があるなら、その時間をAIに指示を出す練習に使った方が、投資対効果は圧倒的に高いというのが率直な実感です。

09 まとめ フォルダ作成の文法は「知識」として押さえつつ、実行はAIに任せる

この記事では、Pythonのos.mkdir・os.makedirsの使い方の違い、pathlibとの比較、よくあるエラーの対処法、業務での実践例、そして弊社GENAIの実運用データと、非エンジニアでもAIに任せる方法までを整理しました。最後にポイントを振り返ります。

✔️os.mkdirは1階層のみ作成、親フォルダがないとFileNotFoundErrorになる
✔️os.makedirsは深い階層を再帰的に一括作成できる、実務では基本こちらを使う
✔️exist_ok=Trueを付ければ、既にフォルダがあってもエラーにならず処理を続けられる
✔️新規で書くならpathlib.Path.mkdir(parents=True, exist_ok=True)も有力な選択肢
✔️よくあるエラーはFileExistsError・FileNotFoundError・PermissionErrorの3つ
✔️日付別・案件別フォルダの自動生成は、for文とos.makedirsの組み合わせが定番
✔️非エンジニアでも、Claude Codeに日本語で指示するだけで同じ自動化が実現できる

最も伝えたいメッセージは、「フォルダ作成の文法を覚えること」自体がゴールではないということです。目的は、案件管理や書類整理にかかる手作業の時間を減らし、本来やるべき判断や意思決定に時間を使うことのはずです。その目的に対しては、コードを書く力よりも、AIに的確な指示を出す力の方が、今の時代は費用対効果が高いというのが弊社の実感です。

代表菅澤 代表菅澤
弊社では「AI鬼管理」というサービスで、Claude Codeを使った業務自動化の設計から伴走まで支援しています。今回のようなファイル・フォルダ管理はもちろん、営業・経理・広告まで含めて何をどこまで自動化できるか、無料相談で具体的にお答えしますので、お気軽にどうぞ。

フォルダ管理・業務自動化の設計を、AI鬼管理が一緒に考えます

os.mkdirの文法を覚える時間を、業務そのものをAIに任せる仕組みづくりに変えませんか。
弊社の実運用ノウハウをベースに、個別に自動化設計のご相談を承ります。

AI鬼管理山崎 AI鬼管理山崎
「フォルダ整理や資料管理が属人化していて困っている」という方に特に向いています。まずは無料相談で、あなたの会社で最もインパクトが大きい自動化ポイントを一緒に見つけましょう。

ここから先の進め方は、大きく2つあります。

自社で回せるようになりたい方は、AI鬼管理でClaude Code/Codexの使い方から業務設計・社内定着まで伴走を受けながら、社内に仕組みを作る道があります。

覚えるより任せたい方は、AI社員AIKATAでこの記事のような定型業務を丸ごと預ける道があります。料金は月30万円の月額定額、追加費用は0円です。

どちらが合うかは、業務量と社内体制次第です。無料相談・無料適合診断で、貴社の場合はどちらが向くかからご相談いただけます。

NEXT STEP

この記事の内容を、あなたのビジネスで
実践してみませんか?

AI鬼管理 — Claude Code導入支援トレーニング

AI活用を自社で回せるようになりたい方へ

AI鬼管理

Claude Code・Cowork導入支援から業務設計・社内浸透まで実践ベースで伴走。「自社で回せる組織」を90日で作る経営者向けトレーニング。

AI社員AIKATA — 定型業務の丸ごと代行

業務を丸ごと任せたい方へ

AI社員AIKATA

請求処理・データ入力・問い合わせ対応などの定型業務を、AI×人の品質管理体制で丸ごと代行。月30万円の定額でまかせ放題、日々は成果物を承認するだけ。

よくある質問

Q. os.mkdirとos.makedirsの違いを一言で教えてください。

A. os.mkdirは1階層分のフォルダしか作成できず、親フォルダが存在しないとFileNotFoundErrorになります。一方os.makedirsは、必要な親フォルダも含めて再帰的に自動作成してくれるため、深い階層のフォルダを一括で作りたい場合はos.makedirsを使うのが基本です。

Q. exist_okを付けないとどうなりますか?

A. exist_ok(デフォルトはFalse)を指定しない、または明示的にFalseにした場合、作成しようとしたフォルダが既に存在するとFileExistsErrorが発生し、その時点でプログラムが停止します。毎日実行するようなバッチ処理では、2回目以降の実行で必ずエラーになるため、繰り返し実行するスクリプトにはexist_ok=Trueを付けるのが実務上の標準です。

Q. 既存フォルダがあるとエラーになるのを防ぐにはどうすればいいですか?

A. 最もシンプルな方法は、os.makedirs(path, exist_ok=True)のようにexist_ok=Trueを指定することです。もう一つの方法として、os.path.exists(path)で事前にフォルダの有無を確認してからos.mkdirを呼び出すやり方もありますが、コード量が増えるためexist_okを使う方が簡潔で推奨されます。

Q. os.mkdirのmode引数は何のためにありますか?

A. 作成するフォルダのアクセス権限(パーミッション)を、0o755のような8進数の数値で指定するための引数です。誰が読み書き・実行できるかを制御する仕組みで、主にLinux・Mac環境でのサーバー運用時に使われます。Windows環境ではこの引数の効果はかなり限定的になる点に注意してください。

Q. パスに日本語や全角文字を使っても大丈夫ですか?

A. 現在のPython(3系)は文字列の扱いがUnicodeベースのため、日本語のフォルダ名も基本的に問題なく扱えます。ただし、OSやファイルシステムによっては特定の記号(全角スペースや一部の記号)が原因でエラーになることもあるため、業務で使う場合はアンダースコアやハイフンなど、環境を問わず安全な区切り文字を併用するのが無難です。

Q. pathlibとosモジュール、どちらを使うべきですか?

A. 既存のスクリプトやチームのコードがosモジュールで統一されているなら、無理に書き換える必要はありません。一方でこれから新しくコードを書くのであれば、パス操作全般を直感的に扱えるpathlibの方が総合的にはおすすめです。どちらもPython標準ライブラリなので追加インストールは不要です。

Q. Windows・Mac・Linuxで挙動に違いはありますか?

A. os.mkdirやos.makedirsの基本的な挙動自体はOSを問わず共通です。ただし、パスの区切り文字(Windowsは円マーク、Mac/Linuxはスラッシュ)や、mode引数によるアクセス権限制御の効き方には差があります。pathlibを使うと、こうしたOSごとの違いをある程度自動で吸収してくれるメリットがあります。

Q. プログラミング未経験でも、フォルダ自動化は実現できますか?

A. 実現できます。Claude Codeのようなツールを使えば、「案件ごとにフォルダを分けて、その中に書類種別ごとのフォルダも作って」といった日本語の指示だけで、裏側のPythonコードの生成から実行までを任せられます。os.mkdirやos.makedirsの文法を暗記していなくても、この記事で紹介したのと同じ業務自動化を実現できる時代になっています。

AIAI鬼管理

AI鬼管理/AI社員AIKATAへのお問い合わせ

この記事を読んで気になった方へ。
専門スタッフが、御社に最適な
業務自動化・業務代行プランを無料でご提案します。

サービスを選択してください

会社名を入力してください
業種を選択してください
お名前を入力してください
※法人・事業用のメールアドレスでお願いします(Gmail等の個人用フリーメールは受付できません)
正しいメールアドレスを入力してください

1つ以上選択してください
1つ以上選択してください
月額コストを選択してください

約1時間のオンライン面談(Google Meet)です

空き枠を取得中...
面談日時を選択してください

予約確定後、Google Calendarの招待メールをお届けします。
しつこい営業は一切ございません。

監修 最終更新日: 2026年9月21日
菅澤孝平
菅澤 孝平 株式会社GENAI 代表取締役
  • AI業務自動化サービス「AI鬼管理」を運営 — Claude Code を活用し、経営者の業務を「AIエージェントに任せる仕組み」へ転換するパーソナルトレーニングを 伴走構築 で提供。日報・採用・問い合わせ対応・経費精算・議事録・データ集計・営業リスト等の定型業務を、AIに代行させる体制を経営者と一緒に作り込む
  • Claude Code 実装ノウハウを 経営者・法人クライアント に直接指導。生成AIを「便利ツール」ではなく 「業務を任せる存在」 として運用する手法を体系化
  • 「やらせ切る管理」メソッドの開発者。シンゲキ株式会社(2021年設立・鬼管理専門塾運営)にて累計3,000名以上の学習者を志望校合格に導いた管理メソッドを、AI × 経営者支援 に転用
  • 著書『3カ月で志望大学に合格できる鬼管理』(幻冬舎)、『親の過干渉こそ、最強の大学受験対策である。』(講談社)
  • メディア出演: REAL VALUE / カンニング竹山のイチバン研究所 / ええじゃないかBiz 他
  • 明治大学政治経済学部卒
現在は AI鬼管理(Claude Code活用の伴走型パーソナルトレーニング)を主事業とし、経営者と二人三脚で「AIに業務を任せる仕組み」を実装。「実行を強制する環境」を AI で構築する手法を、自社の実運用知見をもとに発信している。