前回の続き——階層構造の中で「どのファイルか」を指す

前回のB-04では、ストレージの中身がファイルとフォルダの階層構造で整理されていることを見ました。今回は、その階層構造の中で「どのファイルか」を一つに絞り込んで指し示す書き方、パスを学びます。パスは、AIと一緒に開発を進めるうえで最も事故が多い場所のひとつです。ここを押さえておくと、原因のわからないエラーをぐっと減らせます。
このスライドのポイント
- B-04では、ストレージの中身がファイルとフォルダの階層構造で整理されていることを見た
- 今回は、その階層の中で「どのファイルか」を一つに絞り込んで指す書き方=パス
- パスは、AIとの開発で最も事故が多い場所のひとつ
パスの定義——絶対パス・相対パス・カレントディレクトリ

パスとは、ファイルやフォルダの場所を表す文字列です。書き方は二種類あります。絶対パスは、根本であるルートからすべてを書く書き方で、たとえば /Users/tanaka/project/app.js や、Windowsなら C:\Users\tanaka\project\app.js のように表します。相対パスは、いまいる場所から見た書き方で、./app.js や ../data.csv のように短く書きます。この相対パスの基準となる「いまいる場所」を、カレントディレクトリと呼びます。
このスライドのポイント
- パス=ファイルやフォルダの場所を表す文字列
- 絶対パス=根本(ルート)から全部書く(例: /Users/tanaka/project/app.js、C:\Users\tanaka\project\app.js)
- 相対パス=いまいる場所から見た書き方(例: ./app.js、../data.csv)
- カレントディレクトリ=「いまいる場所」。相対パスの基準点
なぜ必要か——「見つからない」の最大の原因を切り分ける

パスの理解が抜けていると、「ファイルが見つかりません」というエラーの最大の原因を切り分けられません。その最大の原因は、コマンド自体の誤りではなく、実行した場所、つまりカレントディレクトリが想定と違っていることです。AIが提示したコマンドやコードを「どこで実行するのか」という視点が持てないと、正しいコマンドなのに動かない、という状況で手が止まってしまいます。
このスライドのポイント
- 「ファイルが見つかりません」エラーの最大の原因は、カレントディレクトリの想定違い
- コマンド自体の誤りではなく、実行した場所が想定と違うことが多い
- パスがわからないと、AIのコマンドを「どこで実行するか」の重要性に気づけない
構造——同じファイルを絶対パスと相対パスで指す

構造を図で押さえましょう。同じ app.js というファイルを、絶対パスと相対パスの両方で指してみます。絶対パスはルートから書くので、どこから見ても同じ一つの場所を指します。一方、相対パスはカレントディレクトリを基準にするため、いまいる場所が変わると、同じ ./app.js でも指す先が変わってしまいます。カレントディレクトリが変われば相対パスの意味も変わる、これがつまずきの核心です。
このスライドのポイント
- 同じファイル app.js を、絶対パスと相対パス(カレントディレクトリが2通り)で指す対比
- 絶対パスはルートから書くので、どこから見ても同じ一つの場所を指す
- 相対パスはカレントディレクトリが変わると指す先が変わる
具体例——コマンドは正しいのに失敗する頻出パターン

よくある失敗を見てみます。AIに教わったコマンドを実行したら、「ファイルが見つからない」で失敗しました。多くの人はコマンドを打ち間違えたと考えますが、原因はそこではありません。実行した場所、つまりカレントディレクトリが、AIの想定していた場所と違っていたのです。AIはあなたの画面を見ていないため、いまどのフォルダにいるかを知りません。だからこそ、実行する場所を人間が確認する必要があります。これは非常に頻出するパターンです。
このスライドのポイント
- AIに教わったコマンドが「ファイルが見つからない」で失敗する
- 原因はコマンドの誤りではなく、実行した場所(カレントディレクトリ)がAIの想定と違ったこと
- AIは相手の画面を見ていないため、いまどのフォルダにいるかを知らない
技術サンプル——いまいる場所を確認するコマンド

技術サンプルとして、いまいる場所を確認するコマンドを見ます。ターミナルの詳しい話は次々回のB-07で扱うので、ここでは結果の読み方だけに絞ります。macOSやLinuxでは、pwd と打つといまいる場所が表示され、ls と打つとその場所の中身が見えます。Windows PowerShellでは、Get-Location が pwd に、Get-ChildItem が ls に当たります。どちらも読み取り専用で、何も変更しません。この pwd の結果こそが、相対パスの基準点になります。
混同しやすい——「いまいる場所」と「ファイルのある場所」

混同しやすいのは、カレントディレクトリと、対象ファイルのある場所です。コマンドを打つ場所と、操作したいファイルが置かれている場所は、まったくの別物です。この二つが一致している保証はどこにもありません。いまいる場所と、触りたいファイルの場所は分けて考える。この区別がつくと、エラーの原因を落ち着いて探せるようになります。
このスライドのポイント
- カレントディレクトリ vs 対象ファイルのある場所
- コマンドを打つ場所と、ファイルの置き場所は別
- 両者が一致している保証はない
バイブコーディングでの確認点——実行場所を毎回確認する

バイブコーディングでの確認点です。AIからコマンドやコードをもらったら、まず「これはどのディレクトリで実行する前提ですか」と確認しましょう。そして「ファイルが見つからない」というエラーに出会ったら、pwd の結果を添えて相談するのが近道です。AIへの質問例としては、「このコマンドはどのディレクトリで実行する前提ですか。pwd の結果はこれです」と、いまいる場所を伝える形が有効です。
このスライドのポイント
- AIからコマンドやコードをもらったら「どのディレクトリで実行する前提ですか」を確認
- 「ファイルが見つからない」エラーでは pwd の結果を添えて相談する
- AIへの質問例:「このコマンドはどのディレクトリで実行する前提ですか。pwd の結果はこれです: …」
まとめと次回——「どのファイルか」から「どこで動くか」へ

最後に一問一答です。相対パスの基準になる「いまいる場所」を何と呼ぶでしょうか。(少し考えてみてください)答えは、カレントディレクトリです。30秒でまとめます。パスはファイルの場所を表す文字列で、ルートから全部書くのが絶対パス、いまいる場所から書くのが相対パスでした。相対パスはカレントディレクトリ次第で意味が変わり、それが「ファイルが見つからない」エラーの主因です。次回は、同じアプリを動かす複数の「環境」の話へ進みます。関連資料は「Git・GitHub 完全入門」と「エラー文の読み方」です。
このスライドのポイント
- 一問一答: 相対パスの基準になる「いまいる場所」を何と呼ぶ? → カレントディレクトリ
- 30秒まとめ: 絶対パス=ルートから全部書く/相対パス=いまいる場所から書く/基準はカレントディレクトリ
- 次回(B-06): 同じアプリを動かす複数の「環境」の話へ
- 関連資料: 「Git・GitHub 完全入門」「エラー文の読み方」