LS(1) — UNIX Programmer’s Manual
名称
ls − ディレクトリの内容の表示
形式
ls [ −acdfgilqrstu1ACLFR ] name ...
解説
引数にディレクトリを指定すると、 ls はそのディレクトリの内容を表示します。 引数にファイル名を指定すると、 ls はその名前と他にオプションで指定した情報を表示します。 デフォルトでは、 出力はアルファベット順にソートされます。 引数を省略すると、 カレントディレクトリの内容を表示します。 複数の引数を指定すると、 まず、 引数がソートされますが、 ファイル引数はディレクトリよりも先に処理されます。
次のような多数のオプションがあります。
−l 各ファイルのモード、 リンクの数、 所有者、 バイトサイズおよび最終修正時刻を、 ロングフォーマットで出力します(下記参照)。 ファイルが特殊ファイルである場合には、 サイズフィールドには、 代わりにメジャーとマイナーのデバイス番号が入ります。 ファイルがシンボリックリンクの場合には、 リンク先のファイルのパス名が −> に続けて出力されます。
−g ロングフォーマットに、 ファイルのグループも表示されます。
−t 名前ではなく、 最終修正時刻によって(新しいものほど先にくる)ソートします。
−a すべてのエントリを出力します。 このオプションが指定されていない場合には、 ピリオド (.) で始まるファイルを出力しません。
−A すべてのエントリを出力しますが、 ‘.’ と ‘..’ は出力しません。
−s 各ファイルのサイズをキロバイト単位で出力します。
−d 引数がディレクトリである場合には、 その名前だけを出力します。 ディレクトリの状態を知るために、 しばしば −l とともに使用されます。
−L 引数がシンボリックリンクの場合には、 リンク自体ではなく、 リンク先のファイルやディレクトリを出力します。
−r 該当する指定に応じて、 逆アルファベットや古いものから並べるというように、 逆順にソートします。
−u ソート (−t オプション)や出力 (−l オプション)で、 最終修正時刻の代わりに最終アクセス時刻を使用します。
−c ソートや出力に、 ファイルステータスの最終変更時刻を使用します。
−i 各ファイルについて、 iノード番号を最初のカラムに出力します。
−f 引数をディレクトリと解釈し、 そこに記録されている名前を出力します。 このオプションは、 −l、−t、−s、 −r オプションを無視し、 −a オプションが指定されたものとみなします。 名前は、 ディレクトリ内に記録されている順序で出力されます。
−F 名前がディレクトリであれば後ろに‘/’を、 ソケットならば‘=’を、 シンボリックリンクであれば‘@’を付けます。 また、 実行可能ファイルであれば‘∗’を付けます。
−R サブディレクトリを再帰的に出力します。
−1 1行につき 1エントリの形式で出力します。 端末への出力でない場合には、 これがデフォルトになります。
−C マルチカラム形式で出力します。 端末への出力の場合には、 これがデフォルトになります。
−q ファイル名中の印字不可能な文字を、 文字“?”で強制的に出力させます。 端末への出力の場合には、 これがデフォルトになります。
−l オプションでは、 10文字からなるモードが出力され、 次のような意味を持っています。 最初の文字は、 次のとおりです。
d エントリがディレクトリの場合。
b エントリがブロック型特殊ファイルの場合。
c エントリがキャラクタ型特殊ファイルの場合。
l エントリがシンボリックリンクの場合。
s エントリがソケットの場合
− エントリが通常のファイルの場合
次の 9文字は、 3ビットずつの 3組と見なされます。 最初の組は所有者への許可(パーミッション)を示します。 次の組は、 同一ユーザグループ内の他のユーザに対する許可を示します。 最後の組は、 そのほかのユーザに対する許可を示します。 各組の中では、 3文字が、 そのファイルの読み込み、 書き込み、 実行の許可を示します。 ディレクトリの場合の“実行”の許可は、 ディレクトリを検索する許可を示します。 許可は、 以下のように示されます。
r ファイルが読み出し可能
w ファイルが書き込み可能
x ファイルが実行可能
− その許可が否定されている。
ファイルの set_group_id ビットがセットされている場合には、 グループ実行の許可文字として s が与えられます。 同様に、 ファイルの set_user_id ビットがセットされている場合には、 ユーザ実行の許可文字として s が与えられます。
モードの 1000 ビットがオンの場合には、 モードの最後の文字は t です (通常は、 ‘x’ または ‘−’ )。 このモードの意味については、 chmod(1) を参照してください。
ディレクトリ内のファイルのサイズが出力される場合には、 間接ブロックを含むブロックの総数を出力します。
関連ファイル
/etc/passwdls −l においてユーザID を取り出す
/etc/groupls −g においてグループID を取り出す
バグ
ファイル名では、 ニューラインとタブも印字可能な文字と解釈されます。
出力デバイスの幅は、 80 カラムと想定されています。
端末への出力かどうかを基にしてオプションを設定しているので、 “ls −s”と“ls −s | lpr”では、 出力フォーマットが異なった結果になります。 しかし、 このような設定でないと、 ls を使った古いシェルスクリプトがうまく動かなくなることがあります。
NEWS-OSRelease 3.3