Skip to content

型3: ファイルシステムの操作(ls・cd の活用)

クラス: 初心者
所要時間: 約30分
前提知識: 型1〜2 完了済み


1. 解説

Claude Code におけるファイル操作の考え方

Claude Code は「AI に自然言語で指示する」ことと「自分でコマンドを実行する」の両方ができる。 この型では、ファイルシステムの探索において、AIへの指示とターミナル操作を組み合わせる技を身につける。

Claude Code がファイルを「見る」仕組み

Claude Code は起動ディレクトリを基点として、以下の方法でファイルを把握する。

起動ディレクトリ

├── AI が自動で認識するもの
│   ├── ディレクトリ構造(ツリー)
│   ├── CLAUDE.md(プロジェクト設定ファイル)
│   └── .gitignore の内容

└── 指示すれば読めるもの
    ├── 個別ファイルの内容
    ├── 隠しファイル(.env など)
    └── バイナリ以外の全テキストファイル

自然言語でのファイル操作指示パターン

# ディレクトリ構造を確認
「このプロジェクトの構造を教えてください」

# 特定ファイルを読む
「package.json の内容を確認してください」

# ファイルを検索
「.ts で終わるファイルをすべてリストアップしてください」

# ファイル内容の検索
「'TODO' が含まれる行をすべて見つけてください」

2. 実践

事前準備: 稽古用ディレクトリを作成

bash
mkdir -p ~/claude-practice/lesson3
cd ~/claude-practice/lesson3

# サンプルファイルを作成
echo "# My Project" > README.md
echo '{"name": "my-app", "version": "1.0.0"}' > package.json
mkdir -p src tests docs
echo "console.log('hello');" > src/index.js
echo "function greet(name) { return 'Hello, ' + name; }" > src/utils.js
echo "test('greet works', () => {});" > tests/app.test.js
echo "# Documentation" > docs/guide.md

Step 1: プロジェクト構造を AI に把握させる

bash
claude

プロンプトに入力:

このプロジェクトのディレクトリ構造を教えてください。

AI が自動でディレクトリツリーを表示する。

Step 2: 特定ファイルの読み取りを指示

package.json の内容を読んで、プロジェクト名とバージョンを教えてください。

Step 3: ファイル検索の指示

.js で終わるファイルをすべて見つけて、それぞれのファイルに何が書かれているか簡単に説明してください。

Step 4: ファイルを横断した情報収集

src ディレクトリの中にある関数名をすべてリストアップしてください。

Step 5: 相対パス・絶対パスでの指定

src/utils.js を読んで、この関数の改善点を教えてください。

Step 6: 隠しファイルと特殊ファイルの扱い

bash
# .gitignore を作成
echo "node_modules/
.env
*.log" > .gitignore

Claude Code に確認:

.gitignore の内容を確認して、何が除外設定されているか教えてください。

3. 確認課題(Assignment)

課題 3-1: ディレクトリ構造の読み取り

~/claude-practice/lesson3 に移動し、Claude Code を起動して以下を実行せよ。

このプロジェクトのファイル数と、各ディレクトリに何個のファイルがあるかを教えてください。

達成条件: ファイル数と各ディレクトリのファイル数が正確に返答されること

課題 3-2: ファイル内容の分析

src ディレクトリにある全 .js ファイルを読んで、
定義されている関数・変数の一覧を表形式でまとめてください。

達成条件: 表形式で関数・変数の一覧が出力されること

課題 3-3: ファイル検索と集計

以下のようなファイルを追加してから:

bash
echo "// TODO: add error handling" >> src/index.js
echo "// TODO: write more tests" >> tests/app.test.js
echo "// FIXME: performance issue" >> src/utils.js

Claude Code に指示:

プロジェクト全体で "TODO" または "FIXME" が含まれる行をすべて見つけて、
ファイル名と行番号とともにリストアップしてください。

達成条件: 3つすべてのコメントが正確に報告されること


自己チェックリスト


深掘り: Claude Code の内部動作

Claude Code がファイルを操作するとき、内部では以下の「ツール」を使っている:

ツール名役割
Readファイルの内容を読み取る
Globパターンマッチでファイルを検索する
Grepファイル内の文字列を検索する
Bashシェルコマンドを実行する

これらのツールは自動で選択される。中上級者になると 「どのツールが使われているか」を意識することで、より精密な指示が出せるようになる。


よく使う指示パターン集

# ファイル一覧
「このディレクトリにある全ファイルを表示してください」

# 再帰的な検索
「サブディレクトリも含めて全 .ts ファイルをリストアップしてください」

# 内容の検索
「'import React' が含まれるファイルをすべて見つけてください」

# ファイルサイズや更新日時
「最近更新されたファイルを確認してください」

# 特定ファイルの詳細分析
「src/index.js を読んで、このコードの処理フローを説明してください」

次の型

型4: Claude Code との効果的なチャットの基本 →

Claude Code Dojo