Linuxを使い始めたばかりの方が最初に学ぶ基本コマンドの一つが「pwd」です。これは「print working directory」の略で、今自分がどのディレクトリにいるのかを確認するための非常に重要なコマンドです。シンプルながら、スクリプトや作業効率に直結する使いどころの多いコマンドでもあります。この記事では、「pwd」コマンドの基本的な使い方から、オプションの解説、実務での活用例まで、初心者にもわかりやすく丁寧に解説していきます。
pwdコマンドとは?意味と基本機能
「pwd」は「print working directory」の略で、今いる作業ディレクトリ(カレントディレクトリ)を表示するためのコマンドです。LinuxやUnix系のシステムでは、コマンドラインでファイル操作を行う際に、現在どのディレクトリで作業しているのかを意識することがとても大切です。
たとえば、ターミナルを開いていきなりファイルの削除コマンドを打った場合、どのフォルダ内のファイルが対象になるのかを確認せずに操作すると、大切なファイルを消してしまう危険があります。こうした事故を防ぐためにも、「pwd」で自分の位置を確認することは非常に重要なのです。
基本的な使い方
コマンドの実行例
pwd
この1行を入力するだけで、現在のディレクトリのパスが絶対パスで表示されます。たとえば、以下のような出力になります。
/home/user/documents
これは「現在、/home/user/documents
というディレクトリにいますよ」という意味です。
絶対パスとは?
絶対パスとは、ルートディレクトリ(/
)から始まるディレクトリ構造の完全な経路です。pwd
コマンドが返すのは常にこの絶対パスになります。これにより、どの場所にいても、同じ情報が取得できるのです。
pwdコマンドの主なオプション
pwd
は非常にシンプルなコマンドですが、いくつかのオプションを使い分けることで、さらに細かい動作指定が可能です。
-Lオプション(論理的パスを表示)
pwd -L
このオプションを付けると、シンボリックリンクを解決せずに論理的なパス(ログイン時のパスなど)を表示します。環境変数$PWD
と同じ内容を出力します。
-Pオプション(物理的パスを表示)
pwd -P
こちらは、シンボリックリンクを実際のパスに変換して、物理的なディレクトリの位置を表示します。pwd
のデフォルト動作は-L
なので、リンクが関係する作業では-P
の利用が推奨されることもあります。
シンボリックリンクとpwdの違い
Linuxでは、「シンボリックリンク」と呼ばれる、いわばショートカットのような仕組みがあります。たとえば、以下のようにリンクをたどってディレクトリに移動する場合があります。
cd /var/www/html
ln -s /var/www/html /home/user/myweb
cd /home/user/myweb
pwd
この時、pwd
はリンクをそのまま表示する(論理的なパス)ため、出力は/home/user/myweb
になります。しかし、実際のディレクトリは/var/www/html
です。これを確認するためにpwd -P
を使うと、実際のパスが表示されます。
実務での活用例
スクリプト内で使用してディレクトリの確認
シェルスクリプトの中では、現在位置を確認してログ出力したり、条件分岐を行ったりすることがあります。
#!/bin/bash
echo "現在のディレクトリは: $(pwd)"
このようにすることで、実行時のディレクトリがログに出力され、トラブルシュートの際にも役立ちます。
フォルダの確認作業
複数のディレクトリを移動しながら作業していると、どの階層にいるか分からなくなることもあります。その都度pwd
を使えば、自分の現在地を把握できるため、安心して作業を進めることができます。
リモート作業時にも有効
SSHでリモートサーバーに接続して作業する場合にも、pwdコマンドは非常に重宝します。GUIがない環境では自分の作業位置を把握する手段として、pwd
は必須の存在です。
よくあるエラーと対処法
pwd
コマンド自体はほとんどエラーを出すことがありませんが、まれに以下のようなケースに遭遇することがあります。
ディレクトリが削除されている場合
作業中に他のユーザーがディレクトリを削除した場合、pwd
の出力や他のコマンドでエラーが出ることがあります。
pwd: getcwd: cannot access parent directories: No such file or directory
この場合は、一度ホームディレクトリなどに戻って作業をリセットする必要があります。
cd ~
まとめ:pwdコマンドはLinuxの基本中の基本
「pwd」コマンドは一見すると単純ですが、日々の作業やスクリプト開発、トラブルシューティングの中で確実に活用される重要なコマンドです。Linux初心者の方は、まずこのコマンドを覚えて、常に自分の作業ディレクトリを意識するクセをつけましょう。
また、-L
や-P
のオプションを使いこなせるようになると、より高度なディレクトリ操作にも対応できるようになります。迷子にならないためにも、「pwd」はあなたのターミナル生活の頼れるコンパスとなるはずです。