Ubuntuでは「ls -l」または「ls -al」というコマンドを頻繁に実行する。このコマンドはファイルやディレクトリの詳細情報を一覧表示するものだ。ls -lやls -alはよく使うコマンドなので、今回は、このコマンドで表示される内容は最初に理解できるようにしよう。

Ubuntuを起動

まずは、Ubuntuを起動する。メニューから「Ubuntu on Windows」を選択すればよい。

  • スタートメニューから「Ubuntu on Windows」を起動

    スタートメニューから「Ubuntu on Windows」を起動

  • Ubuntu / Windows Terminal

    Ubuntu / Windows Terminal

「Ubuntu on Windows」を選択すると、上のようなターミナルアプリケーションが起動してくる。ここでUbuntuのコマンドを実行する。

ls -alが表示する内容の読み方 ファイル

Windowsではファイルエクスプローラでフォルダやファイルをたどっていくわけだが、Ubuntuではコマンドを使って同じことを行う。このとき、ファイルやディレクトリの一覧を表示させるコマンドが「ls」であることを前回に取り上げた。

このlsコマンドは「ls」とだけ実行することもあるし、「ls -l」や「ls -al」と実行することもある。「ls」はもっともシンプルにファイルやディレクトリの一覧を表示するコマンド、「ls -l」はファイルやディレクトリを詳細情報で一覧表示するコマンド、「ls -al」はドットからはじまる隠しファイルや隠しディレクトリも含めて詳細情報で一覧表示するコマンドだ。

「ls -al」と実行してファイルやディレクトリの一覧を確認すると覚えておけばまず間違いない。これはファイルエクスプローラの「詳細」表示と似たものだ。

  • ls、ls -l、ls -alの実行サンプル

    ls、ls -l、ls -alの実行サンプル

上記のスクリーンショットで「ls -al」と実行した部分を取り出すと次のようになる。

ls -alの実行結果

daichi@VAIO-SX14:~/Documents$ ls -al
total 20
drwxr-xr-x 4 daichi daichi 4096 Aug  9 13:39 .
drwxr-xr-x 5 daichi daichi 4096 Aug  9 13:40 ..
-rw-r--r-- 1 daichi daichi  109 Aug  9 13:39 Makefile
drwxr-xr-x 2 daichi daichi 4096 Aug  9 13:40 mk1
drwxr-xr-x 2 daichi daichi 4096 Aug  9 13:40 mk2
daichi@VAIO-SX14:~/Documents$

この実行結果を読めるようになりたい。

まず、次の行を見る。

Makefileに関するls -alの実行結果

-rw-r--r-- 1 daichi daichi  109 Aug  9 13:39 Makefile

この行は、次のように8つに分けて読む。

rw-r--r-- 1 daichi daichi 109 Aug 9 13:39 Makefile
(1) (2) (3) (4) (5) (6) (7) (8)

それぞれの項目には次のような意味がある。

意味
(1) 種類
(2) パーミッション
(3) ハードリンク数
(4) ユーザー
(5) グループ
(6) サイズ
(7) 最終更新日時
(8) 名前

今回の場合だと次のようになる。

意味
- 通常ファイル
rw-r--r-- (後述)
1 ハードリンクは1つ
daichi ユーザーdaichiのファイル
daichi グループdaichiに所属
109 ファイルサイズ109バイト
Aug 9 13:39 2022年8月9日13時39分に最終更新
Makefile ファイル名はMakefile

(1)は対象の種類を示している。「-」は通常のファイルを意味している。(2)は後で説明する。(3)は今のところ特に知らなくても問題ないのでここでは無視してもらっていい。

(4)と(5)はファイルの所属を表している。Ubuntuでは「ユーザー」は複数の「グループ」に所属することができる。ファイルはこの「ユーザー」と「グループ」に基づいてアクセス許可を定めている。このため、ファイルにはそのファイルの持ち主となる「ユーザー」と「グループ」のデータが設定されている。これはUbuntuのもっとも基本的な概念なので、いまここで覚えてしまおう。

(6)はファイルのサイズ、(7)は最終更新日時、(8)はファイル名だ。