lsの使い方

lsコマンド

ディレクトリの中に何が入っているかを知りたいときに使うlsコマンドについて、lsマニュアル(man ls)とヘルプ(ls --help)を調べ、実例を追加するなどしてまとめてみました。

書式などは、マニュアルの表記に準ずるように記載しています。

マニュアルのセクション番号・バージョンなど
  • コマンド名ls
  • セクション番号:1(実行プログラムまたはシェルコマンド)
  • バージョン:9.4(GNU coreutils)(January 2026)
目次

SYNOPSIS(lsコマンドの書式)

lsコマンドは、ディレクトリの内容を一覧表示するコマンドです。

マニュアルには以下の書式が書かれています。

ls   [OPTION]… [FILE]…

lsマニュアルページによる書式(マニュアルルールに則り、太字などの文字体裁を補正して表示しています)

マニュアル表記のルールは、こちらを参考にしてください【マニュアル表記の統一ルール

上の書式の[OPTION][FILE]をクリックすると、該当項目に移動するようにリンクを設けています

補足の書式

lsマニュアル(man ls)に記載されているオプションのうち、上記の書式に含まれていないオプションがあったので、追加で記載しました。クリックすると説明項目へ移動します。

基本的にアルファベット順になっているので、逆引きの目次として使用できます。

ls   [ -cftuvSUX ] [ --sort=WORD ] [    -a    ] [     -A     ] [ --author ] [    -b    ] [ --block-size=SIZE ] [   -B    ] [    -c    ] [    -C    ] [ --color[=WHEN] ] [    -d    ] [    -D    ] [     -f     ] [    -F    ] [ --file-type ] [ --format=WORD ] [ --full-time ] [     -g     ] [ --group-directories-first ] [    -G    ] [    -h    ]  [  --si   ] [ -H  FILENAME ] [ --dereference-command-line-symlink-to-dir ] [ --hide=PATTERN ] [ --hyperlink[=WHEN] ] [ --indicator-style=WORD ] [     -i     ] [ -I "PATTERN" ] [    -k    ] [     -l     ] [    -L    ] [    -m    ] [     -n     ] [    -N    ] [    -o    ] [    -p    ] [    -q    ] [ --show-control-chars ] [    -Q    ] [ --quoting-style=WORD ] [    -r    ] [    -R    ] [    -s    ] [    -S    ] [ --time=WORD ] [ --time-style=TIME_STYLE ] [     -t      ] [ -T COLS  ] [     -u     ] [     -U     ] [    -v    ] [ -w COLS  ] [    -x    ] [    -X    ] [    -Z    ] [ --zero ] [    -1    ] [ --help ] [ --version ] 

lsマニュアルページによる書式のルールに則り文字体裁を補正して表示しました。

オプション早見表

lsコマンドで使用できるオプションは多数あり、なかなか覚えることができません。そこで、「指定したいオプションを素早く見つける」ことを目的として分類してみました。


基本形式:名前のみリスト:(リストのデフォルトの並び順はアルファベット順です)

ロング形式:詳細リスト:(ロング形式のデフォルトの並び順はアルファベット順です)

  • 標準ロング形式[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(新)月 日 時:分/旧)月 日 西暦)、名前]-l --format=long --format=verboseデフォルト
  • 所有者を表示しない[種類、パーミッション、リンク数、グループ、サイズ、更新日時、名前)-g
  • グループ名を表示しない[種類、パーミッション、リンク数、所有者、サイズ、更新日時、名前]-o
  • 所有者とグループをID(数値)で表示[種類、パーミッション、リンク数、所有者ID、グループID、サイズ、更新日時、名前]-n --numeric-uid-gid
  • 日時(ナノ秒まで)[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(西暦-月-日 時:分:秒.ナノ秒 タイムゾーン)、名前]--full-time

ロング形式専用オプション:-l -g -o -n --full-time などのロング形式に追加できるオプション)

  • グループ名を表示しない [種類、パーミッション、リンク数、所有者、サイズ、更新日時、名前]-G --no-group
  • 作成者を表示[種類、パーミッション、リンク数、所有者、グループ、作成者、サイズ、更新日時、名前]--author
  • 日時(デフォルト[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(新)月 日 時:分/旧)月 日 西暦)、名前]--time-style=locale
  • 日時(ナノ秒まで)[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(西暦-月-日 時:分:秒.ナノ秒 タイムゾーン)、名前]--time-style=full-iso
  • 日時(時:分まで)[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(西暦-月-日 時:分)、名前]--time-style=long-iso
  • 日時(西暦省略/時分省略)[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(新)月-日 時:分/旧)西暦-月-日)、名前]--time-style=iso
  • 日時(書式)[種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時(フォーマットによる出力)、名前]--time-style=+FORMAT
  • ブロックサイズで表示[種類、パーミッション、リンク数、所有者、グループ、ブロックサイズ更新日時、名前]--block-size=SIZE

表示条件:表示する名前(ファイル名)を追加したり絞り込んだりします。[基本形式]と[ロング形式]で指定可能

  • 隠しファイルと「.」と「..」を表示:-a --all
  • 隠しファイルを表示し、「.」と「..」は表示しない:-A --almost-all
  • PATTERNに一致する名前を表示しない(-a-Aと同時に指定しない場合): --hide="PATTERN"
  • PATTERNに一致する名前を表示しない(-a-Aと同時に指定する場合): -I"PATTERN" (大文字アイ) --ignore="PATTERN"
  • ディレクトリ自体を表示:-d --directory
  • サブディレクトリを再帰的に一覧表示:-R --recursive
  • ディレクトリ順、隠しファイル表示、カラーなし(-U-aが有効、--colorが無効): -f

追加項目:[基本形式]と[ロング形式]で指定可能

日時変更:[基本形式]は日時の新しい順に並び替えを行う。[ロング形式]は表示の切り替えのみ並び替えは行わない

名前関係:ディレクトリ名やファイル名に対してのオプション。[基本形式]と[ロング形式]で指定可能

外観:

並び順:[基本形式]と[ロング形式]で指定可能。(基本的に)デフォルトはアルファベット順

その他:

  • dired モード用の出力を生成: -D --dired
  • SELinuxセキュリティコンテキストを表示: -Z --context

DESCRIPTION ******************(lsコマンドの説明)***

ls OPTION FILE

lsは、「ディレクトリの内容をリスト表示する」コマンドです。

lsを実行すると、

  • ディレクトリ(フォルダ)の内容を一覧表示します。【実行例1
  • -cftuvSUX--sortが指定されていない場合は、アルファベット順で表示されます。

メモ:

  • オプションを使うと、表示項目を増減したり、表示内容のカスタマイズや並び替えをすることが可能です。【オプション早見表
  • FILEを指定すると、FILEの内容を表示します。
  • ツリー表示はできません。ツリー表示をしたい場合はtreeコマンドをインストールして使用します。

表示する内容:基本形式

  • lsコマンドだけを実行した場合に表示される基本形式の内容は[名前]のみです。(ディレクトリ名、ファイル名など)【実行例1
    • 名前はファイルの種類により色分けされます。(ディレクトリは青文字、ファイルは白文字など)
    • 並び順はアルファベット順で、端末の幅から自動計算された縦方向の多段組で一覧表示されます。
    • 端末の幅が十分に有る場合は、アルファベット順で、一行に表示されます。
  • 名前(ディレクトリ名やファイル名)に表示不可能な文字が入っている場合は、特殊文字で表示されます。【表示例FILE
  • iノード番号ブロックサイズなどのオプションを追加した場合は、[iノード番号ブロックサイズ、名前]の順で表示されます。

表示する内容:ロング形式【実行例-l

  • 詳細情報を表示する「ロング形式」は、-lオプションなどロング形式のオプションを追加することで表示できるようになります。【ロング形式のオプション一覧
  • ロング形式の詳細については、-lオプションの項目をご確認ください。

実行例1:ホームディレクトリの内容を、端末のデフォルト幅で一覧表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls

実行すると以下のように表示されます。【応用:ls --format=verticalls -Cでも同じ表示結果になります。】

ホームディレクトリには、アルファベット順で「snap、ダウンロード、テンプレート、デスクトップ、ドキュメント、ビデオ、ピクチャ、ミュージック、公開」の9つのディレクトリがありますが、デフォルトの端末幅では一行で表示しきれないため、縦方向の多段組で一覧表示されます。これはデフォルトの表示です。(端末幅を十分に広げた場合は、一行で表示されます)

FILE(ファイル)

FILEには、ディレクトリなどの名称を指定します。

メモ:

  • FILEは、省略可能です。
    • FILEを省略した場合は、カレントディレクトリの情報を一覧表示します。【実行例1
  • FILEを指定すると、そのFILEの内容をリスト表示します。【実行例2
    • FILEは、絶対パスでも相対パスでもOKです。
    • 指定したFILEに何も入っていない場合(空のディレクトリ)、何も表示されずに終了します。【実行例3

実行例2:ダウンロードディレクトリの内容を一覧表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls  ダウンロード

FILE(ディレクトリ)を指定すると、カレントディレクトリの情報ではなく、指定したディレクトリの情報がリスト表示されます。

ダウンロードディレクトリには、3つの「.debファイル」があります、と表示されました。順序はアルファベット順です。

実行例3:空のディレクトリの内容を一覧表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls  ドキュメント

何も入っていない空のディレクトリを指定した場合、何も表示されずに終了します。

ユーザーネーム@PCネーム : ~$            ⬅結果は何も表示されず終了して、元の状態に戻ります。

エラーメッセージや、ファイルはありませんでした、などのメッセージは表示されません。

実行例4:ファイル名に表示不可能な文字が入っている場合の表示例(ドキュメントディレクトリに『”ダブルクォート’』『’シングルクォート”』『テスト』『バックスラッシュ【\】』『半角スペース【 】』という5つのテキストファイルを仮作成し、表示してみた例)

ls  ドキュメント

実行すると以下のように表示されます。

シングルクォート「’」が「’\’」と表示され、『テスト』以外のファイルは(’『ファイル名』’)のようにシングルクォートで囲まれました。ファイル名のままの表示ではなく、判別がつきにくいものもあります。見やすく表示するには-bオプションを使うと良いかもしれません。

OPTIONS(オプション)

lsマニュアル(man ls)に記載されているオプションを、実例を記載するなどしてまとめました。(筆者がマニュアルから学んだ内容です。専門的な解釈とは異なる場合があるかもしれません)

メモ:

  • ロングオプション(--option)に必須となっている引数がある場合、基本的にショートオプション(-option)でも同じようにその引数は必須です。
  • ショートオプション(-option)は、つなげて同時に指定することができます。(例:-lオプションと-aオプションを同時に指定する場合、ls -l -aと記述すべきところ、ls -laとつなげるなど)
  • 基本的に記述するオプションの順序は問われませんが、まれに前後逆にすると機能が無効化してしまうオプションもあります。(例:ls -lals -alは同じ結果となりますが、ls -flls -lfの結果は異なります【-fオプション参照】)
  • 表示形式の異なるオプションを同時に指定した場合は、最後の指定内容が反映されます。

オプション早見表】:

-cftuvSUX

マニュアルに記載されている-cftuvSUX補足の書式参照)は、それぞれ個別のオプション名です。意味はそれぞれのオプションごとに異なるため、各項目欄で確認してください。

-c -f -t -u -v -S -U -X

–format *********************** 基本形式のオプション ***

--format=WORD

--formatは、「lsコマンドの表示形式を指定する」オプションです。

メモ:

WORDの説明:

  • --format=verticalは、(端末の幅が足りない場合)縦方向への多段組で表示します。-Cオプションと同じでデフォルトの表示方法です。【デフォルトの表示例
  • --format=across--format=horizontalは、(端末の幅が足りない場合)横方向への多段組で表示します。-x オプションと同じです。【表示例-x
  • --format=commasは、横方向かつカンマ「,」で区切って表示します。-mオプションと同じです。【表示例-m
  • --format=single-columnは、1項目1行、縦一列で表示します。-1オプションと同じです。【表示例-1
  • --format=long--format=verboseは、各項目の詳細をロング形式で表示します。-lオプションと同じです。【表示例-l

表示イメージ:

-Cオプション(大文字のC)

-Cは、「(表示幅が足りない場合)縦方向多段組で一覧表示する」オプションです。

メモ:

  • 端末「端末」アプリアイコンの幅が、ファイル名などの名前をすべて表示するのに十分なスペースがあればアルファベット順で横方向一行で表示します。
  • 端末の幅が足りず1行で表示できない場合は、アルファベット順、縦方向への多段組、複数列で表示されます。【表示例ls】【表示イメージ
  • オプションを指定せずlsコマンドだけを実行したり、--format=verticalオプションを指定した場合と同じデフォルトの表示です。【デフォルト表示
  • -lオプションや-1オプションなど、表示形式の異なるオプションを同時に指定した場合は、最後の指定内容が反映されます。【実行例

実行例:-lオプションの後に-Cオプションを指定した例

ls  -l  -C

実行すると、-lオプションで指定したロング形式の詳細表示はされずに、-Cオプションの縦方向の多段組で表示されます。

-Cオプションはデフォルトと同じ表示なので、オプションを指定せずにlsコマンドだけを実行した結果と同じです。

-xオプション(小文字のx)

-xは、「(表示幅が足りない場合)横方向多段組で一覧表示する」オプションです。

メモ:

  • 端末「端末」アプリアイコンの幅が、ファイル名などの名前をすべて表示するのに十分なスペースがあればアルファベット順で横方向一行で表示します。
  • 端末の幅が足りず1行で表示できない場合は、アルファベット順、横方向への多段組、複数列で表示されます。【実行例】【表示イメージ
  • --format=across--format=horizontalオプションと同じです。
  • 表示形式の異なるオプションが同時に指定されている場合は、最後の指定内容が反映されます。【実行例-C

実行例:ホームディレクトリのディレクトリやファイルの内容を横方向多段組で表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls  -x

実行すると、以下のように表示されます。【応用:ls --format=acrsssls --format=horizontalでも同じ表示結果になります】

「snap」「ダウンロード」「テンプレート」・・・と、9つのディレクトリがアルファベット順に並び替えられ、横方向多段組でリスト表示されていることが確認できます。【デフォルトの表示形式と比較する

-mオプション(小文字のm)

-mは、「ファイルやディレクトリなどの名前を[,]カンマで区切って表示する」オプションです。

メモ:

  • ファイル名などの名前を「,カンマ」で区切り、アルファベット順で横方向に一覧表示します。【実行例】【表示イメージ
  • 多段組表示はされません。表示する名前が多く、1行で表示しきれない場合は、端末の幅で自動的に改行されて表示されます。
  • --format=commasオプションと同じです。
  • 表示形式の異なるオプションを同時に指定した場合は、最後の指定内容が反映されます。【実行例-C

実行例:ホームディレクトリのディレクトリやファイルの内容をカンマ「,」で区切って表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls  -m

実行すると、以下のように表示されます。【応用:ls --format=commasでも同じ表示結果になります。】

「snap」「ダウンロード」「テンプレート」・・・と、カンマ「,」で区切られ、横方向にリスト表示されていることが確認できます。【デフォルトの表示形式と比較する

-1オプション(数字の1)

-1は、「[1行]に[1つ]のファイルやディレクトリを表示する」オプションです。

メモ:

  • アルファベット順、1ファイル(1ディレクトリ)を1行(縦一列)で表示します。【実行例】【表示イメージ
  • --format=single-columnオプションと同じです。
  • 表示形式の異なるオプションを同時に指定した場合は、最後の指定内容が反映されます。【実行例-C

実行例:ホームディレクトリのファイルなどの名前を1行ずつ縦1列で表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls  -1

実行すると、以下のように表示されます。【応用:ls --format=single-columnでも同じ表示結果になります】

「snap」「ダウンロード」「テンプレート」・・・と、1つのディレクトリが1行で表示されています。【デフォルトの表示形式と比較する

-lオプション(小文字のl エル) *** ロング形式のオプション ***

-lは、「ロング形式(詳細リスト形式)で詳細を表示する」オプションです。

メモ:

表示する内容:ロング形式

  • デフォルトで表示されるロング形式の詳細内容は、[ファイルの種類、パーミッション、リンク数、所有者、グループ、サイズ、更新日時、名前]です。【実行例1
    • 名前(ディレクトリやファイルなど)は色分けされ、アルファベット順で表示されます。
  • iノード番号ブロックサイズ作成者などを追加した場合は、[iノード番号ブロックサイズ、ファイルの種類、パーミッション、リンク数、所有者、グループ、作成者、サイズ、更新日時、名前]の順で表示されます。
  • アクセス日時メタデータ変更日時作成日時などの日時を変更した場合は、上記の更新日時アクセス日時、メタデータ変更日時、作成日時のいずれかに変更されます。
  • オプションを追加すると、表示項目を増減したり、表示内容のカスタマイズや並び替えをすることが可能です。【オプション早見表

参考:

  • GUIの「ファイルアプリファイルアプリ」でも詳細を知ることができます。ファイルアプリで表示可能な詳細は「名前、サイズ、種類、所有者、グループ、アクセス権、更新日、アクセス日時、作成日時、最近、種類の詳細、星」です。【ファイルアプリの使い方

実行例1:カレントディレクトリの詳細情報を表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls -l

以下のような結果(イメージ)が表示されます。【応用:ls --format=longls --format=verbose-l --time-style=localeでも同じ結果になります】

アルファベット順に詳細が表示されています。名前の白文字はファイル、青文字はディレクトリを表しています。上の結果はイメージです。

-gオプション(小文字g)

-gは、「ファイルの所有者を表示せず、ロング形式で表示する」オプションです。

メモ:

  • 「所有者を表示しない」以外は-lオプションと同じです。【表示例
  • -lオプションと同時に指定しなくても、-gオプションだけでロング形式の詳細表示をします。

表示例:ls -gを実行した場合の表示例

所有者を除いた「名前」の詳細が表示されます。

-oオプション(小文字o)

-oは、「グループを表示せず、ロング形式で表示する」オプションです。

メモ:

  • 「グループを表示しない」以外は-lオプションと同じです。【表示例
  • -lオプションと同時に指定しなくても、-oオプションだけでロング形式の詳細表示をします。

表示例:ls -oを実行した場合の表示例

グループを除いた「名前」の詳細が表示されます。

-nオプション(小文字n)

-n --numeric-uid-gid

-nは、「ロング形式で表示し、ユーザー名とグループ名をID(数値)で表示する」オプションです。

メモ:

  • ユーザー名とグループ名を数値(UIDとGID)に代えて表示します。
  • 「所有者(ユーザー)IDとグループIDを表示する」以外は-lオプションと同じです。【表示例
  • -lオプションと同時に指定しなくても、-nオプションだけでロング形式の詳細表示をします。

表示例:ls -nを実行した場合の表示例

所有者とグループ名が「ID」で表示されます。

–full-time

--full-timeは、「ロング形式で表示し、日時は詳細時間で表示する」オプションです。

メモ:

  • 日時を「西暦からタイムゾーン」までの詳細時間で表示します。
  • 「詳細な日時を表示する」以外は、-lオプションと同じです。
  • -lオプションと同時に指定しなくても、--full-timeオプションだけでロング形式の詳細表示をします。【表示例
  • ls -l --time-style=full-isoと同じです。

表示例:ls --full-timeを実行した場合の表示例

西暦からタイムゾーンまで、詳細な日時と時刻が表示されます。(ls -l --time-style=full-isoと同じです)

-Gオプション(大文字G) ***** ロング形式専用オプション ***

-G --no-group

-Gは、「グループを表示しない」オプションです。

メモ:

  • ロング形式のときに、グループを表示しないようにします。【表示例
  • 必ず-lオプションなどのロング形式オプション同時に指定します-Gオプションだけを単独で指定してもロング形式で表示されません。

表示例:ls -lGを実行した場合の表示例

グループを除いた「名前」の詳細が表示されます。

–author

--authorは、「作成者を表示する」オプションです。

メモ:

  • ロング形式のときに、各ファイルの作成者を表示します。【表示例
  • 必ず-lオプションなどのロング形式オプション同時に指定します--authorオプションだけを単独で指定しても作成者は表示されません。

表示例:ls -l --authorを実行した場合の表示例

「作成者」が追加されて表示されます。-l--authorの記述順序は逆(ls --author -l)でも動作します。

–time-style

--time-style=TIME_STYLE

--time-styleは、「日時の表示スタイルを指定する」オプションです。

メモ:

TIME_STYLEの説明:

  • --time-style=localeは、日時をロケール依存形式で表示します。デフォルトの表示方法です。【表示例1
    • 6ヶ月未満の新しいファイルは[○月 日 時:分]形式で表示します。
    • 6ヶ月以上前の古いファイルは[○月 日 西暦]形式で表示します。
  • --time-style=full-isoは、日時の詳細を省略なしで表示します。--full-timeと同じです。【表示例2
    • 全てのファイルを[西暦−月−日 時:分:秒.ナノ秒 +hhmm形式タイムゾーン]形式で表示します。
  • --time-style=long-isoは、日時を「時:分」まで表示します。【表示例3
    • 全てのファイルを[西暦−月−日 時:分]形式で表示します。
  • --time-style=isoは、日時を西暦を省略し、日付と時間「時:分」まで表示します。【表示例4
    • 6ヶ月未満の新しいファイルは[月−日 時:分]形式で表示します。
    • 6ヶ月以上前の古いファイルは[西暦−月−日]形式で表示します。
  • +FORMATは、日時の表示スタイルをカスタマイズして表示します。【表示例5】(date(1) と同様に解釈されます【FORMAT】)
    • 2つのFORMATを指定した場合、左のFORMAT最近でない時間のファイルに適用され、 右のFORMAT最近の時間のファイルに適用されます。(うまく指定できなかったため、実行例は省略します)
  • posix-…は、POSIXロケール以外でのみ有効です。(実行例は省略します)

表示例1:ls -l --time-style=localeを実行した場合の表示例

新しいファイルは、西暦省略、月の表示は「1月」「2月」と表示され、日付や時刻は「数値」で表示されます。6ヶ月以上古いファイルは、「月 日 西暦」が表示されます。(見やすいように該当部分を拡大表示しています)デフォルトの日時表示です。

表示例2:ls -l --time-style=full-isoを実行した場合の表示例

全てのファイルが、西暦からタイムゾーンまでの詳細な日時で表示されます。新旧の区分はありません。(見やすいように該当部分を拡大表示しています)(応用:ls --full-timeでも同じ結果になります)

表示例3:ls -l --time-style=long-isoを実行した場合の表示例

全てのファイルが、西暦から時分まで表示されます。新旧の区分はありません。(見やすいように該当部分を拡大表示しています)

表示例4:ls -l --time-style=isoを実行した場合の表示例

新しいファイルは西暦が省略され、日付と時分までの時刻が「数値」で表示されます。6ヶ月以上古いファイルは、西暦-月-日が表示されます。(見やすいように該当部分を拡大表示しています)

表示例5:ls -l --time-style='+%Y/%m/%d %T'を実行した場合の表示例

フォーマットで指定したとおりに表示されます。(見やすいように該当部分を拡大表示しています)

参考: locale full-iso long-iso isoFORMATで記述すると以下のようになります。

  • --time-style=locale
    • (最近のファイル)は、--time-style='+%b %e %R'[’+○月 日 時:分’]
    • (半年以上前の古いファイル)--time-style='+%b %e %Y'は[’+○月 日 西暦’]
  • --time-style=full-iso
    • --time-style='+%F %T.%N %z'[’+西暦−月−日 時:分:秒.ナノ秒 +hhmm形式タイムゾーン’]
  • --time-style=long-iso
    • --time-style='+%F %R'[’+西暦−月−日 時:分’]
  • --time-style=iso
    • (最近のファイル)--time-style='+%m-%d %R'[’+月−日 時:分’]
    • (半年以上前の古いファイル)--time-style='+%F'[’+西暦−月−日’]

–block-size

--block-size=SIZE

--block-sizeは、「サイズをブロックサイズで表示する」オプションです。

メモ:

  • ロング形式のときに、ディレクトリやファイルのサイズをブロックサイズ(SIZEの倍数)として表示します。
  • 必ず-lオプションなどのロング形式オプション同時に、サイズとともに指定します--block-sizeオプションだけを単独で指定してもブロックサイズは表示されません。

SIZE

  • サイズ(SIZE)は「整数」や「単位」で指定します。【整数での表示例1】【単位での表示例2
  • 単位は省略可能です。(例:10Mは「10×1024」)
    • 1024のべき乗:K、M、G、T、P、E、Z、Y、R、Q
    • 1000のべき乗:KB、MBなど
    • 二進接頭辞(バイナリ接頭辞):KiB=K、MiB=Mなど

表示例1(整数で指定):ls -l --block-size=1000を実行した場合の表示例

元のサイズが4096なので「4096÷1000=5(切り上げ)」となり、1000が5つあると表示されます。

表示例2(単位のみで指定):ls -l --block-size=Kを実行した場合の表示例

1Kは1024です。元のサイズが4096なので「4096÷1024(1K)=4」となり、1Kが4つあると表示されます。

-aオプション(小文字のa) **** 表示条件のオプション ***

-a --all

-aは、「.名前を無視しないように指示する」オプションです。

メモ:

  • .名前は、隠しファイルです。
  • .名前(隠しファイル)と、.(カレントディレクトリ)..(ひとつ上の階層の親ディレクトリ)表示します。【実行例1
    • .名前(隠しファイル)表示し.(カレントディレクトリ)..(ひとつ上の階層の親ディレクトリ)表示しない場合は-Aオプションを使います。
  • [基本形式]と[ロング形式]どちらでも使用可能です。【実行例2
  • (参考)隠しファイルを表示(-a)し、並べ替えはせず(-U)、カラー出力(--color)をしない場合(ls -aU --color=never)は、-fオプションが便利です。【実行例-f

実行例1:[基本形式で]隠しファイルも表示させる例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls -a

ホームディレクトリの中の隠しファイルなどを表示するように指定すると、以下のような結果(イメージ)になります。

.名前の隠しファイルと「.」と「..」がアルファベット順に表示されています。白文字はファイル、青文字はディレクトリです。「.」と「..」の表示を省略するにはls -Aを使います。(上の結果はイメージです。抜粋して見やすく編集しています)

実行例2:[ロング形式で]隠しファイルも含め、カレントディレクトリの詳細情報を表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls -la

-lオプションと-aオプションを指定します。

上記の実行例の詳細情報が表示されます。白文字はファイル、青文字はディレクトリです。(上の結果はイメージです)

-Aオプション(大文字のA)

-A --almost-all

-Aは、「-aオプション出力のうち、...を一覧表示しないように指示する」オプションです。

メモ:

  • .名前は、隠しファイルです。
  • .名前(隠しファイル)表示し.(カレントディレクトリ)..(ひとつ上の階層の親ディレクトリ)表示しません。【実行例
    • .名前(隠しファイル)と、.(カレントディレクトリ)..(ひとつ上の階層の親ディレクトリ)表示するには-aオプションを使います。
  • [基本形式]と[ロング形式]どちらでも指定指定可能です。

実行例:[基本形式で]カレントディレクトリと親ディレクトリを表示せず、隠しファイルは表示する例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls -A

ホームディレクトリの中の隠しファイルなどを表示するように指定すると、以下のような結果(イメージ)になります。

ls -aで表示されていた「.」と「..」が表示されなくなりました。.名前は隠しファイルで、アルファベット順に表示されています。白文字はファイル、青文字はディレクトリです。上の結果はイメージです。抜粋して見やすく編集しています

–hide

--hide="PATTERN"

--hideは、「PATTERNに一致するファイル名を表示しない」オプションです。

メモ:

  • 「””ダブルクォーテーション」で囲んだ文字をリストから除外して表示します。
    • シェル形式のPATTERNに一致する要素を表示しません。
  • -a-Aを同時に指定した場合は上書きされるため--hideオプションは無効になり、除外されません。
    • -a-Aと同時に指定したい場合は-I(大文字アイ)オプションを使用します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

PATTERN

  • 「””ダブルクォーテーション」で囲んで指定します。
    • (例:ls -hide"デスクトップ"デスクトップを除外して表示)
  • 複数の除外文字を指定したい場合は、--hide="PATTERN"を半角スペースで区切り、複数回続けます。
    • (例:ls -hide"デスクトップ" -hide"公開"デスクトップと公開を除外して表示)
  • 特定の文字列を表示しないように指定するには、「*アスタリスク」を使います。
    • (例:ls -hide="*.txt" 「.txt」ファイルを表示しない)
    • (例:ls -hide"*ド"末尾に「ド」が付くファイルを表示しない)など

-Iオプション(大文字Iアイ)

-I "PATTERN" --ignore="PATTERN"

-Iは、「-a-Aを同時に指定しても)PATTERNに一致するファイル名を表示しない」オプションです。

メモ:

  • 「””ダブルクォーテーション」で囲んだ文字をリストから除外して表示します。
    • シェル形式のPATTERNに一致する要素を表示しません。
  • -a-Aと同時に指定したときでも、PATTERNを除外します。
    • -aまたは-Aオプションを同時に指定した場合にPATTERNの除外が無効になるように指定するには--hideオプションを使います。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-dオプション(小文字のd)

-d --directory

-dは、「ディレクトリ自体を表示させる」オプションです。

メモ:

  • ディレクトリ自体を表示し、ディレクトリの内容は表示しません。【実行例1
  • ディレクトリを指定しない場合は、カレントディレクトリが表示されます。【実行例1
  • ディレクトリを指定すると、指定したディレクトリが表示されます。【実行例2
  • シンボリックリンクはたどりません。(例:ls -d /bin )
  • [基本形式]と[ロング形式]どちらでも指定可能です。

実行例1:ホームディレクトリでディレクトリ自体を表示させる例

ユーザーネーム@PCネーム : ~$ で以下を実行)

ls   -d

ホームディレクトリのディレクトリを表示する指定です。以下のような結果になります。

カレントディレクトリ「.」ドットが表示されました。カレントディレクトリが別の場所、例えば「/」ルートディレクトリでls -dを実行しても「.」カレントディレクトリが表示され、ダウンロードディレクトリでls -dを実行しても「.」カレントディレクトリが表示されます。

実行例2:ディレクトリを指定して表示させる例

ls   -d   ダウンロード

ダウンロードディレクトリを表示する指定です。以下のような結果になります。

ダウンロードディレクトリ「ダウンロード」が表示されます。例えばls -d /で「/」ルートディレクトリを指定すれば「/」が表示され、ls -d /homeを指定すれば「/home」が表示されます。

-Rオプション(大文字R)

-R --recursive

-Rは、「再帰的に一覧表示をする」オプションです。

メモ:

  • サブディレクトリを再帰的に一覧表示します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。
    • (例:ls -Rカレントディレクトリを基本形式で、再帰的に一覧表示)
    • (例:ls -lRカレントディレクトリをロング形式で、再帰的に一覧表示)

-fオプション(小文字のf)

-fは、「ディレクトリ順にすべてのエントリを一覧表示する」オプションです。

メモ:

  • -a-Uが有効になり、--colorが無効となったオプションです。【実行例
  • [基本形式]と[ロング形式]どちらでも指定可能です。
    • ロング形式で表示する場合は、指定順序に注意します。(OK例:ls -fl、NG例:ls -lf

実行例:ディレクトリ順に隠しファイルを含めた全てのエントリをカラーなしで一覧表示する例

ls -f

実行すると、以下のように表示されます。(イメージです)

-aオプションで「隠しファイルを表示」し、-Uオプションで「並べ替えをせず」、--color=neverで「カラー表示を無効」にした記述ls -aU --color=neverと同じ表示になります。

-iオプション(小文字i) ******* 追加項目のオプション ***

-i --inode

-iは、「iノード番号を左端に表示する」オプションです。

メモ:

  • 各ファイルのiノード番号(7桁の数値)を左端に追加表示します。(例:ls -i)【表示例
  • [基本形式]と[ロング形式]どちらでも指定可能です。

表示例:ls -iを実行した場合の表示例

ロング形式ls -liなど)を実行しても、同じように左端にiノード番号が表示されます。

-sオプション(小文字s)

-s --size

-sは、「ファイルサイズをブロック単位で左端側に表示する」オプションです。

メモ:

  • 各ファイルの割り当てサイズをブロック単位で左端側に追加表示します。(例:ls -s)【表示例1
  • オプションを追加すると、サイズ記号を表示することも可能です。
    • K(キロバイト)、M(メガバイト)などの単位(1024バイト=1K)付きで表示したい場合は、-hオプションを追加します。(例:ls -sh)【表示例2
    • k(キロバイト)などの単位(1000バイト=1k)付きで表示したい場合は、--siオプションを追加します。(例:ls -s --si)【表示例3
  • [基本形式]と[ロング形式]どちらでも指定可能です。

表示例1:ls -sを実行した場合の表示例

ブロックサイズと名前が表示されます。ロング形式ls -lsなど)を実行しても、同じように左端にブロックサイズが表示されます。

表示例2:ls -shを実行した場合の表示例(-sオプションと-hオプションを同時に実行した例)

ブロックサイズに単位(1024)がつけられたサイズと名前が表示されます。ロング形式ls -lshなど)を実行しても、同じように左端側にブロックサイズ表示されます。

表示例3:ls -s --siを実行した場合の表示例(-sオプションと--siオプションを同時に実行した例)

ブロックサイズに単位(1000)がつけられたサイズと名前が表示されます。ロング形式ls -ls --siなど)を実行しても、同じように左端側にブロックサイズが表示されます。

-kオプション(小文字k)

-k --kibibytes

-kは、「ブロックサイズを1024バイトとして表示する」オプションです。

メモ:

  • ブロックサイズを1024バイトのブロックを使用します。
    • ディレクトリの合計値でのみ使用されます。
  • 必ず-sオプションと同時に指定します。(例:ls -ks)【表示例1
  • オプションを追加すると、サイズ記号を表示することが可能です。
    • K(キロバイト)、M(メガバイト)などの単位(1024バイト=1K)付きで表示したい場合は、-hオプションを追加します。(例:ls -ksh)【表示例2
    • k(キロバイト)などの単位(1000バイト=1k)付きで表示したい場合は、--siオプションを追加します。(例:ls -ks --si)(例:ls --si -ks)【表示例3
  • [基本形式]と[ロング形式]どちらでも指定可能です。
  • (補足:-sオブションとの違いがよくわかりませんでした。)

表示例1:ls -ksを実行した場合の表示例(-kオプションと-sオプションを同時に実行した例)

ブロックサイズと名前が表示されます。ロング形式ls -lksなど)を実行しても、同じように左端側にブロックサイズが表示されます。

表示例2:ls -kshを実行した場合の表示例(-kオプションと-sオプションと-hオプションを同時に実行した例)

ブロックサイズに単位(1024)がつけられたサイズと名前が表示されます。ロング形式ls -lkshなど)を実行しても、同じように左端側にブロックサイズ表示されます。

表示例3:ls -ks --siを実行した場合の表示例(-kオプションと-sオプションと--siオプションを同時に実行した例)

ブロックサイズに単位(1000)がつけられたサイズと名前が表示されます。ロング形式ls -lks --siなど)を実行しても、同じように左端側にブロックサイズが表示されます。

-hオプション(小文字h)

-h --human-readable

-hは、「サイズを単位付きで分かりやすく表示する」オプションです。

メモ:

  • サイズの単位は1024です。(例:1024=1K(1024バイト=1KB)
  • [基本形式]と[ロング形式]どちらでも指定可能です。
    • 基本形式の場合は、-sオプションと同時に指定すると、ブロックサイズを単位付きで左端側に表示することができます。(例:ls -hs)【表示例-sh
    • (基本形式の場合、-hオプションだけでは機能しません)
    • ロング形式(-lオプションなど)の場合は、サイズを単位付きで表示します。(例:ls -lh)【表示例1
    • ロング形式で、-sオプションと同時に指定すると、ブロックサイズを単位付きで左端側に表示します。(例:ls -lhs)【表示例2
  • サイズの単位に「1000=1k」を使いたい場合は、--siを使います。

表示例1:ls -lhを実行した場合の表示例(-lオプションと-hオプションを同時に指定した例)

ロング形式で表示されるサイズが単位付き(1024=1K)で表示されます。

表示例2:ls -lhsを実行した場合の表示例(-l-h-sオプションを同時に指定した例)

ロング形式で表示されるサイズと、左端側にはブロックサイズが単位付き(単位1024=1K)で表示されます。

–si

–siは、「サイズを単位付きで分かりやすく表示する」オプションです。

メモ:

  • サイズの単位は1000です。(例:1000=1k(1000バイト=1kB)
  • [基本形式]と[ロング形式]どちらでも指定可能です。
    • 基本形式の場合は、-sオプションと同時に指定すると、ブロックサイズを単位付きで左端側に表示することができます。(例:ls --si -s)【表示例-s–si
    • (基本形式の場合、--siオプションだけでは機能しません)
    • ロング形式(-lオプションなど)の場合は、サイズを単位付きで表示します。(例:ls -l --si)【表示例1
    • ロング形式で、-sオプションと同時に指定すると、ブロックサイズを単位付きで左端側に表示します。(例:ls -ls --si)【表示例2
  • サイズの単位に「1024=1K」を使いたい場合は、-hオプションを使います。

表示例1:ls -l --siを実行した場合の表示例(-lオプションと--siオプションを同時に指定した例)

ロング形式で表示されるサイズが単位付き(単位1000=1k)で表示されます。

表示例2:ls -ls --siを実行した場合の表示例(-l-s--siオプションを同時に指定した例)

ロング形式で表示されるサイズと、左端側にはブロックサイズが単位付き(単位1000=1k)で表示されます。

–time ************************ 日時変更のオプション ***

--time=WORD

--timeは、「日時に関する表示や並べ替えを指定する」オプションです。

メモ:

  • [基本形式]と[ロング形式]どちらでも指定できますが、表示と並び替えの結果が異なります。
    • 基本形式-lオプションなどを使わない)の場合は、日時の表示はしませんが、新しい時間順に表示されます。--time=mtime--time=modificationを除く)
    • ロング形式-lオプションなどと同時に指定)の場合は、日時を表示しアルファベット順で表示します。
  • 日時を新しい順に並び替えたい場合は、-t--sort=timeオプションを追加します。
  • 日時を古い順に並び替えたい場合は、-t(または--sort=time)と-rオプションを追加します。
  • 表示する日時はWORDで指定します。
  • 日時のフォーマットのデフォルト○月 ○ 時:分です。--time-style--full-timeオプションを使うと日時の表示をカスタマイズすることができます。

WORD

  • --time=mtime--time=modificationは、更新日時です。(デフォルトの日時と同じです)【表示例1
  • --time=atime--time=access--time=useは、アクセス日時です。(-uと同じです)【表示例2
  • --time=ctime--time=statusは、メタデータ変更日時です。(-cと同じです)【表示例3
  • --time=birth--time=creationは、ファイル作成日時です。【表示例4

表示例1:ls -l --time=mtimeを実行した場合の表示例

更新日時が表示されます。--time=modificationオプションを指定しても同じ結果になります。更新日時はデフォルトの日時です。

表示例2:ls -l --time=atimeを実行した場合の表示例(ls -luと同じ)

アクセス日時が表示されます。--time=access--time=useオプションを指定しても同じ結果になります。

表示例3:ls -l --time=ctimeを実行した場合の表示例(ls -lcと同じ)

メタデータ変更日時が表示されます。--time=statusオプションを指定しても同じ結果になります。

表示例4:ls -l --time=birthを実行した場合の表示例

ファイル作成日時が表示されます。--time=creationオプションを指定しても同じ結果になります。

-uオプション(小文字u)

-uは、「アクセス日時を表示したり、並び替えたりする」オプションです。

メモ:

  • [基本形式]と[ロング形式]どちらでも指定できますが、表示と並び替えの結果が異なります。
    • 基本形式-lオプションなどを使わない)の場合は、アクセス日時の表示はしませんが、アクセス日時が新しい時間順に表示されます。(例:ls -uアクセス日時の新しい順に並び替え)
    • ロング形式-lオプションなどと同時に指定)の場合は、アクセス日時を表示しアルファベット順で表示します。(例:ls -lu更新日時をアクセス日時に変更して表示)【表示例–time=atime
  • アクセス日時を表示し、新しい順に並び替えたい場合は、-t--sort=timeオプションを追加します。(例:ls -lutls -lu --sort=time
  • アクセス日時を表示し、古い順に並び替えたい場合は、-t(または--sort=time)と-rオプションを追加します。(例:ls -lutrls -lur --sort=time
  • --time=atime--time=access--time=useオプションと同じです。
  • 日時のフォーマットは○月 ○ 時:分と表示されますが、--time-style--full-timeオプションを使うと日時の表示をカスタマイズすることができます。

-cオプション(小文字のc)

-cは、「ctimeを表示したり、並び替えたりする」オプションです。

※ctimeとは、メタデータ変更日時で、ファイルの状態情報が変更された時間、すなわち、ファイルステータス情報の最終変更時間を言います。

メモ:

  • [基本形式]と[ロング形式]どちらでも指定できますが、表示と並び替えの結果が異なります。
    • 基本形式-lなどを使わない)の場合は、メタデータ変更日時の表示はしませんが、メタデータ変更日時の新しい順に表示されます。(例:ls -cアクセス日時の新しい順に並び替え)
    • ロング形式-lオプションなどと同時に指定)の場合は、メタデータ変更日時を表示しアルファベット順で表示されます。(例:ls -lc)【表示例–time=ctime
  • メタデータ変更日時を表示し、新しい順に並び替えたい場合は、-t--sort=timeオプションを追加します。(例:ls -lctls -lc --sort=time
  • メタデータ変更日時を表示し、古い順に並び替えたい場合は、-t(または--sort=time)と-rオプションを追加します。(例:ls -lctrls -lcr --sort=time
  • --time=ctime--time=statusオプションと同じです。
  • 日時のフォーマットは○月 ○ 時:分と表示されますが、--time-style--full-timeオプションを使うと日時の表示をカスタマイズすることができます。

–color *********************** 名前関係のオプション ***

--color=WHEN

--colorは、「名前のカラー出力を指定する」オプションです。

メモ:

  • ファイルタイプを色分けして表示するか、色分けせずに表示するかを指定できます。
  • --color=always--color=autoを指定すると、標準出力が端末に接続されている場合のみカラーコードを出力します。デフォルトの表示です。
    • ディレクトリを青、ファイルを白、debファイルを赤、シンボリックリンクを空色などで表示します。
  • --color=neverを指定すると、ファイルの種類を判別するためのカラー表示は無効になります。【実行例
  • WHENで指定できる引数は、他にもいくつかあります。【WHEN項目参照
  • カラー動作は「LS_COLORS環境変数」の設定で変更可能です。(dircolors(1)参照)
  • [基本形式]と[ロング形式]どちらでも指定できます。

実行例:--color=neverでカラー表示を無効にする例

ls   --color=never

実行すると以下のように表示されます。

青文字で表示されていた「ディレクトリ」が、「色なし(白)」で表示されました。【カラー表示のデフォルトを見る

–indicator-style

--indicator-style=WORD

--indicator-styleは、「名前に記号(識別子)をつけて表示する」オプションです。

メモ:

WORD

  • --indicator-style=noneは、名前にファイルタイプ記号をつけません。デフォルトの表示です。
  • --indicator-style=classifyは、名前にファイルタイプを「*/=>@|」記号をつけて分類します。
  • --indicator-style=file-typeは、ファイルタイプのうち「*アスタリスク」記号のみ除きます。
  • --indicator-style=slashは、ディレクトリに「/スラッシュ」記号をつけます。
    • -pオプションと同じです)
    • (例:ls --indicator-style=slash)【表示例-p

ファイルタイプ:

  • 「*」アスタリスクは、実行可能ファイルを表します。
  • /スラッシュは、ディレクトリを表します。
  • =イコールは、ソケットファイルを表します。
  • 「>」は、不明(調査中)です。
  • 「@」は、シンボリックリンクを表します。
  • 「|」は、FIFO名を表します。

表示例:ls --indicator-style=classify /usr/bin/usr/binディレクトリのファイルタイプを表示)

実行ファイル「*」が表示されました。(/usr/binディレクトリは、コマンドを走らせるプログラムファイルなどが入っているディレクトリです)

-Fオプション(大文字のF)

-F --classify=WHEN

-Fは、「ファイルタイプを表示する」オプションです。

メモ:

  • 名前(ファイル名)の末尾に「ファイルタイプの記号(*/=>@|)」が表示されます。【ファイルタイプ記号
  • -Fで指定する場合は、WHEN引数は不要です。(例:ls -F /)【実行例
  • --classify=WHENで指定する場合は、以下のように記述します。
    • --classify=always--classify=autoはファイルタイプを表示します。
    • --classify=neverはファイルタイプを表示しません。
    • WHENで指定できる引数は、他にもいくつかあります。【WHEN項目参照
  • --indicator-style=classifyオプションと同じです。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

実行例:ルートディレクトリ「/」のファイルタイプを表示してみた例

ls  -F  /

実行すると、以下のようにファイルのタイプが表示されます。-Fオプションは、--classify=always--classify=auto--indicator-style=classifyオプションと同じです。

アットマーク「@」はシンボリックリンク、スラッシュ「/」はディレクトリ、白文字はファイルです。ルートディレクトリ「/」にはさらに多くのディレクトリなどがあります。

–file-type

--file-typeは、「-Fの出力の内、[*]アスタリスクを表示しない」というオプションです。 

メモ:

表示例:ls --file-type /usr/binを実行した場合の例(実行ファイル「*」を表示しない例)

実行ファイル「*」が表示されなくなりました。/usr/binディレクトリは、コマンドを走らせるプログラムファイルなどが入っているディレクトリです。

-pオプション(小文字p)

-p --indicator-style=slash

-pは、「ディレクトリに/スラッシュを付けて表示する」オプションです。

メモ:

表示例:ls -p ~(ホームディレクトリ内のディレクトリに「/スラッシュ」をつけて表示した例

スラッシュ「/」はディレクトリです。ls --indicator-style=slashでも同じ結果になります。

–quoting-style

--quoting-style=WORD

--quoting-styleは、「名前のクォーティングスタイルを指定する」オプションです。

メモ:

WORD

  • --quoting-style=literalは、引用符なしで名前を表示します。(-Nと同じ)
  • --quoting-style=localeは、名前をシングルクォーテーションで囲んで表示します。
  • --quoting-style=cは、名前をダブルクォーテーションで囲んで表示します。(-Qと同じ)
  • --quoting-style=escapeは、表示不可能な文字をC形式のエスケープ文字で表示します。(-bと同じ)
  • --quoting-style=shellは、シェルのメタ文字がある場合など、名前を必要に応じてシェル形式(シェル向けのクォーテーション)で表示します。
  • --quoting-style=shell-alwaysは、名前を常にシェル形式(シェル向けのクォーテーション)で表示します。
  • --quoting-style=shell-escapeは、非表示文字を「$”」形式で表示します。
  • --quoting-style=shell-escape-alwaysは、名前を常に「$”」形式で表示します。

-Nオプション(大文字N)

-N --literal

-Nは、「引用符なしで名前を表示する」オプションです。

メモ:

-Qオプション(大文字Q)

-Q --quote-name

-Qは、「名前をダブルクォーテーションで囲んで表示する」オプションです。

メモ:

-bオプション(小文字のb)

-b --escape

-bは、「表示不可能な文字をC形式のエスケープ文字で表示する」オプションです。

メモ:

実行例:ドキュメントディレクトリに『”ダブルクォート’』『’シングルクォート”』『テスト』『バックスラッシュ【\】』『半角スペース【 】』という5つのテキストファイルを仮作成し、表示してみた例

ls  ドキュメント  -b

結果は以下のように表示されます。

「’\’」と表示されていたシングルクォート「’」がシングルクォート「’」として表示されました。ただし、パックスラッシュ「\」と半角スペース「 」には先頭に「\」が表示されています。【-bオプションを付けないデフォルトの実行例

-qオプション(小文字q)

-q --hide-control-chars

-qは、「表示不可能な文字を「?」に置き換える」オプションです。

メモ:

  • 表示不可能な文字の代わりに「?」を表示します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

–show-control-chars

--show-control-charsは、「表示不可能な文字をそのまま表示する」オプションです。

メモ:

  • 表示不可能な文字をそのまま表示します。
  • プログラムが「ls」ではない場合、または、出力が端末以外の場合は、デフォルトになります。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

--hyperlink[=WHEN]

--hyperlinkは、「ハイパーリンクを表示する」オプションです。

メモ:

  • 名前にマウスカーソルを合わせると、リンク先を表示します。
  • --hyperlink--hyperlink=always--hyperlink=autoは、マウスカーソルを合わせると、ハイパーリンクを表示します
  • --hyperlink=neverは、マウスカーソルを合わせても、ハイパーリンクを表示しません。(デフォルト
  • WHENで指定できる引数は、他にもいくつかあります。【WHENの説明
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-Bオプション(大文字のB)

-B --ignore-backups

-Bは、「~で終了する要素を一覧に表示しないようにする」オプションです。

メモ:

  • ~で終了する要素とは、バックアップファイルなどを指すようですが、現象を確認できなかったため、説明や実行例などは省略します。

-wオプション(小文字w) **** 外観のオプション ***

-wCOLS --width=COLS

-wは、「出力幅を指定する」オプションです。

メモ:

  • 出力幅をCOLSに指定します。(例:ls -w20幅を20に指定)
  • 「0ゼロ」は制限なしという意味で、「改行なし」で一行で表示します。(例:ls -w0改行なしで表示)【表示例
  • デフォルトは、端末の幅に準じます。(絶対的な数値ではなく、実行時の端末幅です)
  • [基本形式]と[ロング形式]どちらでも指定可能です。

表示例:ls -w0を実行した場合の表示例

改行なしで表示されます。

–zero

--zeroは、「改行しないで表示する」オプションです。

メモ:

  • 各出力行の末尾に、改行ではなくNUL文字を使用します。(例:ls --zero改行文字をNUL文字に変更)
    • カラーなし、改行なしで表示されます【表示例
  • [基本形式]と[ロング形式]どちらでも指定可能です。

表示例:ls --zeroを実行した場合の表示例

-w0オプション実行時の表示と異なり、改行なし、色なしで表示され、さらにユーザーネームも改行なしで続いて表示されます。

-Tオプション(大文字T)

-T --tabsize=COLS

-Tは、「タブの文字数を指定する」オプションです。

メモ:

  • デフォルトのタブの文字数は「8」です。
  • COLSを指定すると、タブの幅(文字数)がCOLSになります。
  • 筆者の環境では指定できなかったため、実行例は省略します。

–sort *********************** 並び順のオプション ***

--sort=WORD

--sortは、「並べ替えを指定する」オプションです。

メモ:

  • WORDで指定したとおりに並び替えをして表示します。
  • 逆順で並び替えたい場合は、-rオプションを追加します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

WORD

  • --sort=noneは、ソートせずに表示します。ディレクトリ順です。(-Uと同じです)
  • --sort=sizeは、サイズの大きい順に表示します。(-Sと同じです)
  • --sort=timeは、日時の新しい順に表示します。(-tと同じです)
  • --sort=versionは、数字(接頭辞)の新しい順に表示します。(-vと同じです)
  • --sort=extensionは、拡張子のアルファベット順に表示します。(-Xと同じです)
  • --sort=widthは、ディレクトリやファイルなどの名前の短い順に表示します。

-Uオプション(大文字)

-Uは、「ソートしない」オプションです。

メモ:

-Sオプション(大文字)

-Sは、「ファイルサイズが大きい順に並び替える」オプションです。

メモ:

  • ファイルのサイズが大きい順に並び替えて表示します。
  • --sort=sizeと同じです。
  • ファイルサイズが小さい順に並び替えたい場合は、-rオプションを追加します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-tオプション

-tは、「日時で並べ替える」オプションです。

メモ:

  • すべてのファイルを日時の新しい順に並べ替えて表示します。
    • デフォルトでは、更新日時新しい順に並び替えます。
    • アクセス日時新しい順は、-u --time=atime --time=access --time=useのいずれかを追加します。(例:ls -ltu
    • メタデータ変更日時新しい順は、-c --time=ctime --time=statusのいずれかを追加します。(例:ls -ltc
    • 作成日時新しい順は、--time=birth --time=creationのいずれかを追加します。(例:ls -lt --time=birth
  • --sort=timeと同じです。
  • 日時の古い順に並び替えたい場合は、-rオプションを追加します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-vオプション

-vは、「数字順で並び替える」オプションです。

メモ:

  • (接頭辞の)数字順で、数字の小さい順に並べ替えます。
  • --sort=versionと同じです。
  • 数字の大きい順に並び替えたい場合は、-rオプションを追加します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-Xオプション(大文字X)

-Xは、「拡張子で並び替える」オプションです。

メモ:

  • 拡張子のアルファベット順に並び替えます。
  • --sort=extensionと同じです。
  • 逆順に並び替えたい場合は、-rオプションを追加します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-rオプション(小文字r)

-r --reverse

-rは、「並び順を逆にする」オプションです。

メモ:

–group-directories-first

--group-directories-firstは、「ディレクトリを先に表示する」オプションです。

メモ:

  • ファイルとディレクトリが混在していても、先にディレクトリをグループ化して表示し、ファイルはその後に表示します。
  • --sortオプションを追加可能です。(--sort=none-U を使用したときは、グループ化は無効になります)
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-Hオプション(大文字H) *** シンボリックリンクのオプション ***

-H   FILENAME --dereference-command-line  FILENAME

-Hは、「シンボリックリンクをたどる」オプションです。

メモ:

  • コマンドラインに表示されているシンボリックリンクをたどります。(例:ls -H /bin )
  • メモ:-Hオプションを指定しなくても同じ結果が表示されるのでデフォルトだと思われます。
  • シンボリックリンクをたどらず、ディレクトリだけを表示したい場合は、-dオプションを使用します。
  • [基本形式]と[ロング形式]で指定可能です。

--dereference-command-line-symlink-to-dirは、「シンボリックリンクをたどる」オプションです。

メモ:

  • ディレクトリを指す各コマンドラインのシンボリックリンクをたどります。
  • コマンドラインのシンボリックリンクがディレクトリを指す場合に、シンボリックリンクをたどリます。
  • メモ:--dereference-command-line-symlink-to-dirオプションを指定しなくても同じ結果が表示されるのでデフォルトだと思われます。
  • シンボリックリンクをたどらず、ディレクトリだけを表示したい場合は、-dオプションを使用します。
  • [基本形式]と[ロング形式]で指定可能です。

-Lオプション(大文字L)

-L --dereference

-Lは、「シンボリックリンクが参照するファイルの情報を表示する」オプションです。

メモ:

  • シンボリックリンクのファイル情報を表示する場合、リンク自体の情報ではなく、リンクが参照するファイルの情報を表示します。
  • [基本形式]と[ロング形式]どちらでも指定可能です。

-D(大文字のD) *********** その他のオプション ***

-D --dired

-Dは、「dired モード用の出力を生成する」オプションです。

メモ:

  • Emacsのdiredモード向けに設計された出力を生成します。(Emacsはテキストエディタのうちのひとつです)
  • 実行例は省略します。

-Zオプション(大文字Z)

-Z --context

-Zは、「セキュリティコンテキストを表示する」オプションです。

メモ:

  • 各ファイルのSELinuxセキュリティコンテキストを表示します。
  • 実行例は省略します。

–help

--helpは、「ヘルプを表示する」オプションです。

メモ:

  • lsコマンドのヘルプ(使い方)を表示して終了します。

–version

--versionは、「バージョン情報を表示する」オプションです。

メモ:

  • バージョン情報を表示して終了します。

WHEN(引数)

=WHENは、--classifyオプション、--hyperlinkオプション、--colorオプションの指定時に記述する引数です。

メモ:

  • WHEN引数のデフォルト値はalwaysです。
  • 以下の引数が有効です。

有効な引数:

  • デフォルト値:always
  • はい(yes):alwaysyesforce
  • いいえ(no):nevernonone
  • はい(yes):autottyif-tty

まとめ・参考資料

以上で、lsコマンドの使用方法の説明を終わります。さらに詳しい内容を知りたい場合は、以下のコマンドを実行してみてください

lsマニュアル:man ls
apt-getヘルプ:ls --help

ls コマンド:https://www.tohoho-web.com/linux/cmd/ls.html

8.4.21 lsコマンド(ファイルまたはディレクトリの内容を表示する)◎https://itpfdoc.hitachi.co.jp/manuals/3021/30213b3220/0379.HTM

10.1.6 タイムスタンプのフォーマット◎https://linuxjm.sourceforge.io/info/GNU_coreutils/coreutils-ja_72.html

10.1.7 ファイル名のフォーマット:https://linuxjm.sourceforge.io/info/GNU_coreutils/coreutils-ja_73.html

よかったらシェアしてね!
目次