The CentOS Logo Vertical Version With Registered Trademark

こんにちは、じょえずです。


仮想化環境のCentOSマシンを使って、Linux系OSの操作に馴染んでいくシリーズの続きです。

今回はディレクトリ構造について、いくつかコマンドとともに紐解いていきます。

これまでの経緯はこちらからご覧ください。

pwdコマンドでカレントディレクトリを確認

CentOSを使ってみよう! コマンドラインとシェル」のコマンドプロンプトのところで

[XXXX@localhost ~]$

のプロンプト部分の形式をデフォルトで

"ユーザー名"+"@"+"ホスト名"+"カレントディレクトリ"+"$"

と解説しましたが、カレントディレクトリの箇所が「~」という記号で表されています。

この場合の現在の関連付けられているカレントディレクトリパスが、pwdコマンドで確認できます。

cent0033
はい、「/home/xxxx」(XXXXにはユーザー名がはいります) と出てきました。「home」というディレクトリ配下のユーザー名と同じ名称のディレクトリという風に理解ができます。
lsコマンドで配下のファイル・フォルダの一覧も見てみましょう。
cent0037
「/」はパスのデリミタ(区切り文字)ですが、Windowsだと「\」に当たるものですね。Windowsであれば、Cドライブなどを頂点として、その配下に各種フォルダやファイルが配置されますが、Linux系にはこのドライブという概念はありません、頂点もその配下も、全てがディレクトリという単位でツリー構造にまとめられています。

ですので一番先頭の「/」とそれ以外の「/」は若干意味合いが違っています。その辺を詳しくCDコマンドで階層を遡りながら見てみましょう。

cdコマンドでカレントディレクトリを変更

Windwosでもお馴染み「cd」(チェンジディレクトリ)コマンドでカレントディレクトリを変更できます。階層を遡るので「home」フォルダを指定してもいいのですが、cdコマンドでは現在のディレクトリから見た相対パスとして「親ディレクト」を「..」の記号で指定できますので、変更してpwdコマンドで確認してみます。

cent0038
はい、今度は「/home」となりました。プロンプトのカレントディレクトリの表記も「home」になってます。さらに遡ります。
cent0039
はい、「/」。配下をみると「home」ディレクトリ以外にも「dev」やら「etc」やら、「opt」や「sys」など、何やらいろいろありますね。

この「/」こそがルートディレクトリです。全てのディレクトリの頂点となる特別なディレクトリで「/」という記号で表されているんですね。

ですから「/home」と表記であれば「ルートディレクトリ」配下の「home」ディレクトリということを表しています。

それではカレントを最初に場所に戻しておきましょう。最初のカレントは「/home/xxxx」でした。これをLinux系ではホームディレクトリと呼びます。Windwosで言うところのユーザーフォルダですね。そしてこのホームディレクトリは「~」と記号で表せます。

cent0040
はい、カレントディレクトリはホームディレクトリとなり、プロンプトのカレントディレクトリの表記はホームディレクトリを表す「~」という記号で表記されています。

ディレクトリ構造とパス表記

どうでしょう、なんとなくLinux系のディレクトリ構造つかめましたでしょうか。「アプリケーション」→「ファイル」でGUIで確認してみましょう。

左側の「コンピューター」を選択するとルートディレクトリが開かれます。

cent0034
ここから「home」をクリックすると
cent0035
「home」ディレクトリ配下にユーザー名フォルダがあることがわかります。それをクリックすると、
cent0036
はい、ホームディレクトリの中身です。

ちなみに、ルートディレクトリ配下の各ディレクトリは、ディレクトリ/ファイル構成の標準規格FHSで役割等が規定されており、その主なものとしては、

/bin基本コマンド
/boot起動に必要なファイル
/devデバイスファイル
/etc設定ファイル
/homeユーザーのホームディレクトリ
/lib共有ライブラリ
/lib共有ライブラリ
/mnt一時的なマウントポイント
/opt追加アプリケーション
/procプロセス情報など
/rootroot用ホームディレクトリ
/sbinシステム管理用コマンド
/tmp一時的なファイル
/usr各種プログラム
/var変更されるデータ
のようになっています。
また、パスを表す文字列ですが、以下のような記号が使えます。
/ルートディレクトリ
.現在のディレクトリ(カレントディレクトリ)
..現在(カレントディレクトリ)より一つ上のディレクトリ
~ホームディレクトリ

カレントディレクトリを示す「.」を使ってカレントディレクトリ配下にlsコマンドの出力結果をリダイレクトしてファイルに出力してみましょう。

cent0041
こんな感じで、カレントディレクトリ、この場合はホームディレクトリ直下に「savelog.txt」というファイル名で出力されます。

そのファイルの中身をviコマンドで確認してみましょう。
が、今回はここまで、詳しい内容は次回にします。

ここまでのまとめ

  • pwdコマンドでカレントディレクトリのパスが確認できる
  • cdコマンドでカレントディレクトリを変更
  • 「/」「.」「..」「~」で「ルートディレクトリ」「カレントディレクトリ」「カレントの一つ上のディレクトリ」「ホームディレクトリ」を示せる
  • Linux系のディレクトリ/ファイルの構成は標準規格FHSで規定されている。
次回はリダイレクトとviコマンドについてです。それでは!