次: , 前: Which files are listed, 上: ls invocation


10.1.2 リストアップされる情報

これらのオプションは,lsが表示する情報に影響します.デフォル トで,ファイル名のみ表示されます.

`--author'
長い書式のディレクトリのリストを生成するとき,それぞれのファイルの著者 をリストアップします.GNU/Hurdでは,ファイルの著者はその所有者とは異な りますが,他のオペレーティングシステムではその二つは同じです.
`-D'
`--dired'
長いリスト(-l)の書式を用いた場合,主な出力の後に追加して以下 を出力します.
          //DIRED// beg1 end1 beg2 end2 ...
     

begNendNは,出力のそれぞれのファイル名の始めと終りのバイ ト位置を記録する符号無し整数です.これで,たとえスペースや改行といった 通常用いない文字を含むときも,異常な検索をすることなく,Emacsで簡単に 名前を見つかるようになります.

ディレクトリが再帰的(-R)にリストアップされる場合,出力はそれ ぞれのサブディレクトリの後に,良く似た行を出力します.

          //SUBDIRED// beg1 end1 ...
     

最終的に以下の形式の行を出力します.

          //DIRED-OPTIONS// --quoting-style=word
     

wordは引用形式です(see Formatting the file names).

以下は実際の例です.

          $ mkdir -p a/sub/deeper a/sub2
          $ touch a/f1 a/f2
          $ touch a/sub/deeper/file
          $ ls -gloRF --dired a
            a:
            total 8
            -rw-r--r--  1    0 Dec  3 00:50 f1
            -rw-r--r--  1    0 Dec  3 00:50 f2
            drwxr-xr-x  3 4096 Dec  3 00:50 sub/
            drwxr-xr-x  2 4096 Dec  3 00:50 sub2/
          
            a/sub:
            total 4
            drwxr-xr-x  2 4096 Dec  3 00:50 deeper/
          
            a/sub/deeper:
            total 0
            -rw-r--r--  1 0 Dec  3 00:50 file
          
            a/sub2:
            total 0
          //DIRED// 49 51 86 88 123 126 162 166 222 228 288 292
          //SUBDIRED// 2 3 171 176 233 245 296 302
          //DIRED-OPTIONS// --quoting-style=literal
     

上記の`//DIRED//'行のオフセットの組が,以下の名前f1f2subsub2deeperfileを分離し ていることに注意して下さい.`//SUBDIRED//'行のオフセットは,以下 のディレクトリ名aa/suba/sub/deepera/sub2を分離しています.

以下は,五番目の項目名を抽出する方法,`deeper'の例で,対応するオ フセットの組は,222と228です.

          $ ls -gloRF --dired a > out
          $ dd bs=1 skip=222 count=6 < out 2>/dev/null; echo
          deeper
     

上記のリストには,`deeper'の項目に対してスラッシュが後置されてい ますが,オフセットは,最後のスラッシュを用いていない名前を選択している ことに注意して下さい.しかし,ls--escape(-b) のようなオプションとともに --diredを用いて呼び出し,特殊文字を含むファイル名を処理する場 合,バックスラッシュが含まれることに注意して下さい.

          $ touch 'a b'
          $ ls -blog --dired 'a b'
            -rw-r--r--  1 0 Dec  3 00:52 a\ b
          //DIRED// 31 35
          //DIRED-OPTIONS// --quoting-style=escape
     

引用の印(例えば--quoting-style=c)を追加して,引用形式を使用し ている場合,オフセットには引用の印が含まれます.そのため,ユーザが環境 変数QUOTING_STYLEで,引用形式を選択している可能性があることに注 意して下さい.このため,--diredを使用しているアプリケーション では,明示的にコマンドラインで--quoting-style=literalオプショ ン(-Nまたは--literal)を指定する,またはエスケープさ れた名前のパーサを用意しておいて下さい.

`--full-time'
長い形式のディレクトリリストの書式と,完全な時間のリストを生成します. --time-style=full-isoとともに--format=longを使用する ことと等価です(see Formatting file timestamps).
`-g'
長い書式のディレクトリのリスト表示ですが,所有者の情報は表示しません.
`-G'
`--no-group'
長い書式のディレクトリのリスト表示で,グループ情報の表示を禁止します. (これはgnuではないバージョンのlsではデフォルトで,我々 は互換性のためにこのオプションを提供します.)
`-h'
`--human-readable'
メビバイトに対する`M'のような,サイズ文字を追加します.1000倍では なく1024倍が使用されます.`M'は1,048,576バイトを意味します.1000 倍を望む場合,--siオプションを使用してください.
`-i'
`--inode'
それぞれのファイルのinode番号(ファイルシリアル番号とインデックス番号と も呼ばれています)を,ファイル名の左に出力します.(この番号は,特定のファ イルシステム内の,それぞれのファイルを単一のものとして識別します.)
`-l'
`--format=long'
`--format=verbose'
それぞれのファイル名に加えて,ファイル形式,許可,ハードリンク数,所有 者名,バイトのサイズ,そして通常は編集した時間となっているタイムスタン プ(see Formatting file timestamps)を出力します.

通常,サイズは句読点を用いずバイト数を出力しますが,これは優先可能です (see Block size).例えば,-hでは,人間が読み易い省略した ものを出力し,`--block-size="'1"'は,現在のロカールで千単位で分離 してバイト数を出力します.

リストアップされているそれぞれのディレクトリに対し,`total blocks'という行をファイルに前置し,そこでのblocksは,その ディレクトリの全てのファイルに対する全体的なディスク占有量です.ブロッ クサイズは,現在デフォルトで1024バイトですが,これに優先させることが可 能です(see Block size).blocksは,それぞれのハードリンクを別々 に数えて計算します.これはおそらく欠陥です.

リストアップされる許可は,象徴的なモードでの指定に似ています (see Symbolic Modes).しかし,lsは,それぞれの許可の設定 を複数のビットを三番目の文字に組み合わせ,以下のようにします.

`s'
setuidやsetgidビットと対応する実行可能ビットが,両方設定されている場合.
`S'
setuidやsetgidビットは設定されているが,対応する実行可能ビットが設定さ れていない場合.
`t'
stickyビットとotherの実行可能ビットが両方設定されている場合.
`T'
stickyビットは設定されているが,otherの実行可能ビットが設定されていな い場合.
`x'
実行可能ビットが設定されていて,上記は何も適応されない場合.
`-'
それ以外.

許可ビットに続くものは,ファイルに適用するアクセス手法の変更を指定する 単一の文字です.文字がスペースのとき,アクセス手法の変更はありません. 印刷可能な文字(例えば`+')のとき,そのような手法があります.

`-n'
`--numeric-uid-gid'
長い書式でディレクトリのリストを生成しますが,所有者とグループの名前の 代わりに数値のUIDとGIDをリストアップします.
`-o'
長いディレクトリのリストの書式を生成しますが,グループ情報は表示しませ ん.それは,--no-groupを用いた--format=longの使用と 同じです.
`-s'
`--size'
ファイル名の左側に,それぞれのファイルのディスク占有量を出力します.こ れは,ファイルが使用しているディスクスペースの総量で,それは通常ファイ ルサイズよりわずかに多くなりますが,ファイルに欠陥がある場合は,より小 さくなるはずです.

通常ディスクの占有量は1024バイト単位で出力されますが,これに優先させる ことが可能です(see Block size).

HP-UXシステムからBSDシステムに,NFSでマウントされているファイルに対し, このオプションは,正しい値の半分のサイズを報告します.HP-UXシステムで は,BSDシステムからNFSでマウントされているファイルに対し,正しい値の2 倍のサイズを報告します.これは,HP-UXの欠点のためです.それはHP-UXの lsプログラムにも影響します.

`--si'
メガバイトに対する`MB'のような,SI形式のサイズの略語を追加します. 1024倍ではなく1000倍が使用されます.`MB'は1,000,000バイトを意味し ます.このオプションは,--block-size=siと等価です.1024倍を望 む場合,-hまたは--human-readableオプションを使用して ください.