カテゴリ: Linuxコマンド集 更新日: 2026/06/25

Linuxコマンドcd -L解説|シンボリックリンクを解決せず論理パスで移動する方法

cd -Lオプション|シンボリックリンクを解決せず論理パスで移動する
cd -Lオプション|シンボリックリンクを解決せず論理パスで移動する

先生と生徒の会話形式で理解しよう

生徒

「先生、Linuxでディレクトリを移動するcdコマンドに-Lオプションがあるって聞いたんですが、どういう意味ですか?」

先生

-Lは『論理パス』で移動するという指定なんです。つまり、シンボリックリンクをそのままの形で扱って移動します。」

生徒

「シンボリックリンクってショートカットみたいなものですよね?」

先生

「その通りです。ショートカットの道を通って移動するのがcd -Lです。では実際にどんな違いがあるか見てみましょう。」

1. cdコマンドの基本

1. cdコマンドの基本
1. cdコマンドの基本

cdコマンドはLinuxで「change directory」の略で、現在の作業ディレクトリを変更する役割を持ちます。例えば以下のように実行すると、ユーザーのDocumentsフォルダに移動できます。


cd Documents
pwd
/home/user/Documents

このように、cdは作業の基盤となる重要なコマンドです。

2. シンボリックリンクとは?

2. シンボリックリンクとは?
2. シンボリックリンクとは?

シンボリックリンクとは、別のディレクトリやファイルを指し示すための仕組みで、Windowsでいう「ショートカット」と似ています。リンク先にアクセスすると、あたかもその場所に本物があるように扱うことができます。

例えば、/var/www/htmlを指す/home/user/webというリンクを作れば、短いパスで目的地にたどり着けます。

3. cd -Lの動作

3. cd -Lの動作
3. cd -Lの動作

cd -Lを使うと、リンク先を解決せずに論理的なパスを保持したまま移動します。つまり「案内標識をそのまま辿る」イメージです。


cd -L /home/user/web
pwd
/home/user/web

この場合、実際の場所は/var/www/htmlですが、表示されるパスはあくまでも/home/user/webのままです。

4. cd -Lとcd -Pの違い

4. cd -Lとcd -Pの違い
4. cd -Lとcd -Pの違い

cd -Pはシンボリックリンクを解決して物理的なパスを表示します。一方、cd -Lはリンクを解決せず論理パスをそのまま使います。

  • -L:論理パス(リンクをそのまま利用)
  • -P:物理パス(リンクを解決して実際の場所に移動)

通常、Linuxでは-Lがデフォルトで採用されていることが多いです。

5. cd -Lが役立つシーン

5. cd -Lが役立つシーン
5. cd -Lが役立つシーン

cd -Lを使うと、リンクを辿って作業する際に「見た目のパスを維持」できるため、チームで共有している環境などでは便利です。

  • 複数の人が同じシンボリックリンクを使って作業しているとき
  • 本物のパスが長くて覚えにくい場合に、短いリンクを使いたいとき
  • あえて「論理パスのまま」作業を続けたい場合

特に初心者は「リンクの名前を見てどこに移動したか分かりやすい」という点で、cd -Lを使うメリットがあります。

6. 初心者へのアドバイス

6. 初心者へのアドバイス
6. 初心者へのアドバイス

Linuxの学習を始めたばかりの人は、シンボリックリンクの仕組みをすぐに理解するのは難しいかもしれません。ですが、cd -Lは「ショートカットを通って移動する」と覚えておけば大丈夫です。

もし物理的な場所を確認したい場合はcd -Pを、見た目のパスをそのまま扱いたいときはcd -Lを選ぶ、と整理しておくと理解しやすくなります。

まとめ

まとめ
まとめ

今回の記事では、Linux操作の基本であるcdコマンド、その中でも特にシンボリックリンク(ショートカット)を扱う際に重要な「cd -L」オプションについて詳しく解説してきました。Linuxのディレクトリ移動は一見単純ですが、物理パスと論理パスの違いを理解することで、より高度なサーバー管理や開発環境の構築が可能になります。

「cd -L」の「L」はLogical(論理的)を意味しており、シンボリックリンクという「道しるべ」をそのまま辿る動きをします。一方で、対照的な「cd -P」はPhysical(物理的)を意味し、リンクの先にある本当の実体ディレクトリへと移動します。多くのLinuxディストリビューションでは、この「-L」がデフォルトの動作として設定されていますが、明示的に使い分けることで、スクリプト作成時などの予期せぬ挙動を防ぐことができます。

重要なポイントの振り返り

cd -L(論理パス移動)

シンボリックリンクの名前を維持して移動します。pwdコマンドを実行した際、リンク名が含まれるパスが表示されるため、自分が「どのショートカットを通ってきたか」が直感的に分かります。

cd -P(物理パス移動)

シンボリックリンクを「解決」し、実体のディレクトリへ移動します。システムの深い階層にある設定ファイルを触る際や、バックアップ作業で「本当の場所」を確認したい時に重宝します。

実践的なコマンド操作例

それでは、実際に一般ユーザーとルートユーザーで、どのように表示や挙動が変わるのか、検証用のコマンドをおさらいしてみましょう。まずは一般ユーザーで、シンボリックリンクを作成して移動する基本的な流れです。

一般ユーザーでの操作例:論理パスの確認


mkdir -p /home/user/actual_data
ln -s /home/user/actual_data /home/user/my_link
cd -L /home/user/my_link
pwd
/home/user/my_link

次に、システム管理者がルート権限で物理パスを特定しながら作業するシーンを想定してみましょう。cd -Pを使うことで、リンクに惑わされずに実体へと到達できます。

ルートユーザーでの操作例:物理パスへの強制移動


cd -P /home/user/my_link
pwd
/home/user/actual_data

効率的な学習のために

プログラミング未経験の方や、これからインフラエンジニアを目指す方にとって、Linuxのパスの概念は少し複雑に感じるかもしれません。しかし、「-Lは見た目重視」「-Pは中身重視」とシンプルに捉えてみてください。Web制作の現場では、プロジェクトごとに長いパスのディレクトリを短い名前のシンボリックリンクで運用することがよくあります。その際、自分が今プロジェクトのどの位置にいるかを把握し続けるためには、デフォルトの「cd -L」の動きを正しく理解しておくことが不可欠です。

SEOの観点からも、Linuxコマンドのオプション一つ一つには明確な存在理由があります。特定のコマンドが「なぜ用意されているのか」という背景を知ることは、単なる暗記ではなく、応用力のある技術習得へと繋がります。この記事が、皆さんのターミナル操作をより快適にする一助となれば幸いです。

先生と生徒の振り返り会話

生徒

「先生、ありがとうございました!cd -Lを使うと、ショートカットの名前のままディレクトリに居続けられるから、作業場所が分かりやすくて安心ですね。」

先生

「その通りです。初心者のうちは、自分が今どこにいるのか迷子になりやすいですからね。論理パス(-L)で移動しておけば、ディレクトリの構造がスッキリ見えます。」

生徒

「でも、もしプログラムを動かす時に『本当の住所』を教えないといけない場合は、cd -Pで確認すればいいんですよね?」

先生

「素晴らしい理解です!例えば、設定ファイルの中で絶対パスを記述する必要がある時などは、cd -Pをしてからpwdで本当の場所を突き止めるのが定石ですよ。」

生徒

「なるほど。普段は意識しなくても-Lで動いているけど、いざという時のために-Pという切り札があることも覚えておきます。ルート権限で作業する時も慎重に使い分けたいです!」

先生

「その意気です。Linuxコマンドはオプション一つで世界が変わります。これからも一つずつ、仕組みを楽しみながら学んでいきましょうね。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Linuxのcdコマンドとは何をするための基本コマンドですか?

Linuxのcdコマンドは、現在作業しているディレクトリを移動するための基本的なLinuxコマンドです。ターミナル操作では作業ディレクトリが基準になるため、cdコマンドを理解することはLinux初心者やプログラミング初心者にとって非常に重要です。ファイル操作やプログラム実行の前提となる操作なので、Linux学習の最初に覚えるコマンドの一つです。

cdコマンドで移動したあとに現在の場所を確認する方法は何ですか?

cdコマンドでディレクトリを移動したあと、現在の作業ディレクトリを確認するにはpwdコマンドを使います。pwdは現在のパスを表示するLinuxコマンドで、cdとセットで覚えるとディレクトリ移動の理解が深まります。Linux初心者が現在位置を見失わないためにも必須の知識です。
関連記事:
カテゴリの一覧へ
新着記事
New1
圧縮・アーカイブ
bunzip2 -fオプションの使い方を完全ガイド!Linuxで圧縮ファイルを強制上書きする方法
New2
テキスト・データ処理
headコマンドとは?Linuxでファイルの先頭部分を表示する基本
New3
Linuxコマンドの基本
Linuxのパスの基本!絶対パスと相対パスの違いを初心者向けにやさしく解説
New4
ディスクとファイルシステム管理
mountコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイルシステムマウント方法
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門
No.4
Java&Spring記事人気No4
圧縮・アーカイブ
tarコマンドの使い方を完全ガイド!初心者でもわかるLinuxのアーカイブ作成と解凍の基本