はじめに
Linuxのコマンドラインで、ファイルシステムの中身を確認するために最も頻繁に使用されるコマンドが、ls(list)です。このコマンドは、現在の作業ディレクトリや指定したディレクトリに存在するファイルやサブディレクトリの一覧を表示する役割を担います。
lsコマンドは非常にシンプルですが、その豊富なオプションを使いこなすことで、ファイルの権限、サイズ、更新日時など、システム管理に不可欠な詳細情報を取得することができます。
LPICレベル1の試験では、特に詳細表示 (-l) や隠しファイルの表示 (-a)、そしてファイルの権限表示の理解が問われます。この記事では、lsコマンドの基本的な使い方から、コマンド名の由来、必須オプション、そしてLPIC対策として押さえるべきポイントまでを詳しく解説していきます。
lsコマンドの基本
まずは、lsコマンドの基本的な使い方と、よく使うオプションから見ていきましょう。
lsコマンドの書式
ls [オプション] [ファイルまたはディレクトリ]
- ポイント: オプションや引数を付けずに
lsと入力すると、現在の作業ディレクトリにある非表示ではないファイルとディレクトリの一覧が表示されます。
主要オプション一覧
| オプション | 意味 | 補足 |
-a | 隠しファイル(.で始まるファイル)も含めて全て表示 | all |
-l | 詳細情報(ロングフォーマット)を表示 | long |
-F | ファイルの種類を識別子(/, *, @など)付きで表示 | classify |
-R | サブディレクトリの中身も再帰的に表示 | recursive |
-h | ファイルサイズを人間が読みやすい形式で表示(-lと併用) | human-readable |
-t | 更新日時が新しい順に表示 | time sort |
コマンド名の由来:なぜ「ls」なのか?
lsコマンドの「ls」は、英語の “list”(リスト、一覧) の短縮形です。
このコマンドの目的は、ディレクトリの内容を一覧(リスト)形式でユーザーに提示することにあります。Unixの初期から存在するコマンドであり、その機能がそのまま簡潔な2文字の略語として定着しました。
主要オプションの詳細と実践例
lsコマンドのオプションの中でも、特にシステム管理やLPIC対策で必須となるものを、一覧表の順に詳しく見ていきます。
1. -a (all) オプション:隠しファイルを含む全てを表示
意味: 通常は表示されない隠しファイル(ファイル名が.で始まるファイル。例: .bashrc、.profile)も含めて、ディレクトリ内の全てのエントリを表示します。
実践例:
ls -a

.: 現在のディレクトリ自身
..: 親ディレクトリ
オプションの由来: aはall(全て)の頭文字です。
2. -l (long) オプション:詳細表示
意味: ファイルやディレクトリの**詳細情報(ロングフォーマット)**を一行ずつ表示します。LPIC試験で最も重要なオプションです。
実践例:
ls -l

この一行の情報は、ファイルタイプとアクセス権限、リンク数、所有者、所有グループ、ファイルサイズ、最終更新日時、ファイル名という重要な要素で構成されています。詳細は補足を確認ください。
オプションの由来: lはlong(長い、詳細な)の頭文字です。
<補足> ls -lで表示される内容について
ファイルタイプ
最初の1文字がファイルタイプを表します。
d: ディレクトリ (Directory) です。-: 通常ファイル (Regular file) です。l: シンボリックリンク (Symbolic link) です。- 他にも
c(キャラクタデバイスファイル)、b(ブロックデバイスファイル) などがあります。
drwxr-xr-x の場合は、ディレクトリであることを示しています。
パーミッション
残りの9文字は、パーミッション(アクセス権)を、以下の3つのグループに分けて表しています。
この9文字は、さらに3文字ずつのセットに分けられ、それぞれに読み取り (r)、書き込み (w)、実行/アクセス (x) の権限が設定されます。
| グループ | 位置 | 説明 |
| ユーザー | 2〜4文字目 | ファイルの所有者 (user) に対する権限 |
| グループ | 5〜7文字目 | ファイルの所有グループ (group) に属するユーザーに対する権限 |
| その他 | 8〜10文字目 | それ以外の全て (others) のユーザーに対する権限 |
権限の詳細
| 文字 | 意味 | 通常ファイルの場合 | ディレクトリの場合 |
r | 読み取り (Read) | ファイルの内容を読むことができる | ディレクトリ内のファイル名の一覧を表示できる |
w | 書き込み (Write) | ファイルの内容を変更・削除できる | ディレクトリ内にファイルを作成・削除・名前変更できる |
x | 実行 (Execute) | プログラムとしてファイルを実行できる | そのディレクトリに入ることができる(アクセスできる) |
- | 権限なし | その権限がないことを示します。 |
例: drwxr-xr-x の意味
この例を分解すると、以下のようになります。
| 位置 | 文字 | グループ | 意味 |
| 1文字目 | d | ファイルタイプ | ディレクトリ |
| 2-4文字目 | rwx | ユーザー (所有者) | 読み取り、書き込み、実行/アクセスがすべて可能 |
| 5-7文字目 | r-x | グループ | 読み取りと実行/アクセスは可能、書き込みは不可 |
| 8-10文字目 | r-x | その他 | 読み取りと実行/アクセスは可能、書き込みは不可 |
3. -F (classify) オプション:ファイルタイプを識別子付きで表示
意味: 一覧表示されたエントリの末尾に、その種類を示す記号を付けて表示します。ファイルの種類を瞬時に判断できます。
/:ディレクトリ
*:実行可能なファイル
@:シンボリックリンク
実践例:
ls -F

オプションの由来: Fはclassify(分類する)の頭文字と関連しており、ファイルの種類を識別する機能を表します。
4. -R (recursive) オプション:サブディレクトリも再帰的に表示
意味: 指定したディレクトリ内のファイルだけでなく、その配下にあるサブディレクトリの中身も全て(再帰的に)表示します。ディレクトリの階層構造を把握するのに役立ちます。
実践例:
ls -R

オプションの由来: Rはrecursive(再帰的)の頭文字です。
5. -h (human-readable) オプション:サイズを見やすく表示
意味: -lオプションと組み合わせて使用し、ファイルサイズをバイトではなく、人間が読みやすい単位(K、M、Gなど)で表示します。
実践例:
ls -lh

dummy_file.txtのファイルサイズが1.0Mで表示されていることがわかる。
ちなみにls -lの場合は以下になる。dummy_file.txtのサイズが1048576となっており、一目でわかりにくい。
ls -l

オプションの由来: hはhuman-readable(人間が読める)の頭文字です。
6. -t (time sort) オプション:日時順にソート
意味: ファイル名のアルファベット順ではなく、最終更新日時が新しい順にファイルをソートして表示します。直近で変更されたファイルを探す際に便利です。
実践例:
ls -lt

オプションの由来: tはtime sort(時刻順ソート)の頭文字です。
LPIC対策としてのポイント
lsコマンドの理解度を深めるために、以下の点を押さえておきましょう。
- デフォルトの表示: オプションなしの
lsは、隠しファイルは表示しないこと。 - 権限の表示:
-lの出力における最初の10文字(ファイルタイプと権限)の構造を理解すること(例:dはディレクトリ、-は通常ファイル、lはシンボリックリンク)。 - 複数オプションの結合: オプションはまとめて記述できること(例:
ls -lahはls -l -a -hと同じ)。
まとめ
今回は、ファイルとディレクトリの一覧を表示するlsコマンドについて、その基本的な使い方からコマンド名の由来、そして特に重要なオプションまでを詳しく解説しました。ls -lの出力形式を理解することは、Linuxのファイル権限や所有者を把握するための基礎となります。
LPICレベル1の試験対策としては、各オプションの意味と、-lの出力形式を確実にマスターしておきましょう。



コメント