lsコマンドで表示される4096とは何のこと?フォルダサイズとファイルサイズの関係は?duコマンドの利用方法も教えてください

このQ&Aのポイント
  • lsコマンドで表示される4096は、ディレクトリのサイズを示しています。ディレクトリはファイルやサブディレクトリの親としての役割を持ち、そのサイズは格納しているファイルやサブディレクトリの数によって変化します。
  • ディレクトリにはサイズが0のものも存在します。これは、ディレクトリ自体にはファイルやサブディレクトリが含まれておらず、空の状態を表しています。ウィンドウズのフォルダとは異なり、ディレクトリのサイズは格納されているファイルやサブディレクトリのサイズには反映されません。
  • lsコマンドではディレクトリのサイズを直接確認することはできませんが、duコマンドを使用することでディレクトリの容量を調べることができます。duコマンドは指定したディレクトリ以下のファイルやディレクトリの容量を表示します。
回答を見る
  • ベストアンサー

lsの4096とディレクトリ容量計測方法について

ls -la を実行すると サイズが4096というディレクトリ(test1とする)が多々見つかります。 またディレクトリによっては、0(test2とする)というのもありました。 ただ、test2ディレクトリの下に、file1というファイルがありサイズが10kでした。 【環境】 /root/test1(4096) /root/test2(0)   →file1(10K) /root/test3(4096) 【質問1】 ls -la で表示される4096とは何のことなのでしょうか? 【質問2】 ウインドウズのフォルダのように、ファイルサイズがディレクトリサイズに反映されてtest2に、 ディレクトリサイズが10kではなく、0と表示される理由は、なぜなのでしょうか? 【質問3】 各ディレクトリのサイズをlsで見れないとすれば、duコマンドで調べるしかないのでしょうか? 以上3点、 ご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4848/10262)
回答No.2

【質問1】 ディレクトリ自体のサイズです。 【質問2】 これはおかしいです。ディレクトリである以上、サイズゼロはあり得ません。 もしシンボリックリンクだとしても、サイズゼロはあり得ません。 file /root/test2 で、どう表示されますか? 【質問3】 1.ディレクトリのサイズはls -lで表示される物=4096です。 2.ディレクトリ配下にあるファイルやディレクトリのサイズの合計はそれぞれのサイズを加算しないとわかりません。 3.ディレクトリ配下にあるファイルやディレクトリがディスク上で使っているディスクブロックの大きさはduコマンドで求めます。 Windowsのフォルダのプロパティに表示されている、「サイズ」は上記2,「ディスク上のサイズ」は上記3です。

ShiftTail
質問者

お礼

>ディレクトリ自体のサイズです。 ディレクトリ自体のサイズなんですね。 >これはおかしいです。ディレクトリである以上、サイズゼロはあり得ません。 もしシンボリックリンクだとしても、サイズゼロはあり得ません。 すぐちょっと確認できないので、おかしいということで認識しておきます。 >ディレクトリ配下にあるファイルやディレクトリがディスク上で使っているディスクブロックの大きさはduコマンドで求めます。 やはり、duですか。情報ありがとうございます。 すっきりしました。

その他の回答 (1)

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

>【質問1】 >ls -la で表示される4096とは何のことなのでしょうか? 「ls 4096」とかで検索すると引っかかりそうですねぇ。 http://okwave.jp/qa/q2380999.html とか。 「Linux ディレクトリエントリ」で検索してみるのもアリでしょう。 http://wiki.bit-hive.com/north/pg/ls%A5%B3%A5%DE%A5%F3%A5%C9%A4%CE%C9%BD%BC%A8%A4%CB%A4%C4%A4%A4%A4%C6%A1%CA%A5%C7%A5%A3%A5%EC%A5%AF%A5%C8%A5%EA%A4%CE%A5%B5%A5%A4%A5%BA%A1%CB http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=34465&forum=10 とか。 >【質問2】 >ウインドウズのフォルダのように、ファイルサイズがディレクトリサイズに反映されてtest2に、 >ディレクトリサイズが10kではなく、0と表示される理由は、なぜなのでしょうか? 「ディレクトリ内のファイルサイズの合計」ではないことは質問1の回答の通りですが…… ファイルがあるのにサイズ0…というのはちょっと不明です。 # ハードリンク? >【質問3】 >各ディレクトリのサイズをlsで見れないとすれば、duコマンドで調べるしかないのでしょうか? とりあえず、パッと出るのはduですかね。 他にもあるかも知れませんが……。 # 現状、duで困っていないのでそれ以上調べていないです。

ShiftTail
質問者

お礼

>「ディレクトリ内のファイルサイズの合計」ではないことは質問1の回答の通りですが…… ファイルがあるのにサイズ0…というのはちょっと不明です。 # ハードリンク? 0はおかしいのですね。 >各ディレクトリのサイズをlsで見れないとすれば、duコマンドで調べるしかないのでしょうか? やはり、duでのサイズを調べるだけなのですね。 情報ありがとうございました。

関連するQ&A

  • ディスクの使用サイズ表示の違い

    UNIXコマンドであるディレクトリ配下のディスクの使用サイズを表示させようと思っています。 ・du -k ・find -lsでファイルサイズを足す(ファイル、ディレクトリ、シンボリックリンクを含む) ・ls -Rでファイルサイズを足す(ファイル、ディレクトリ、シンボリックリンクを含む) 上記3つで行いましたが、全て違う結果になりました。 なぜこの様な事になるのでしょうか? よろしくお願いいたします。

  • コマンド ls について

    linux初心者です。 調べたのですが、出てこなかったので知っている方がいらっしゃったら。 linux コマンドで ls というものがあると思いますが、オプションで -la をつけた際に表示される "." ".." の2つのディレクトリ??はいったい何を意味している(というより何?)のでしょうか。 パーミッションも付与されているみたいなので、ファイルかディレクトかなのでしょうか? ls で検索しても出てこなかったので(manも読みましたがそれらしいものはなかったので)、ちょっと無知な感じですがご回答よろしくお願いいたします。

  • Unix:ls-lRのリダイレクト

    kshで、ls-lRのコマンドを使い表示したディレクトリの内容を、新規のディレクトリ内のファイルに下記のようにリダイレクトさせようとしましたが、ファイル作成できませんでした。 ls-lR >>$HOME/test/apple cat | ls-lR >> $HOME/test/apple どうすれば、ls-lRの内容をファイルに表示できますか?

  • DUとLSの表示の差

    ファイルのパーミッション等が下記の場合が関係しているのか不明ですがDUコマンドとLSコマンドで示されるDiskの使用量が一致しないのですが、理由を教えていただけませんか? % cd test001 % ls -l total 944 -rw-r-lr-- 1 own grp 524288000 Oct 15 09:12 File0 -rw-r-lr-- 1 own grp 524288000 Oct 15 09:11 File1 % % du 946 . % cd ../test002 % ls -l total 2049056 -rw-r-lr-- 1 own grp 524288000 Oct 17 14:12 File0 -rw-r-lr-- 1 own grp 524288000 Oct 12 21:16 File1 % % du 2049056 . DUの結果とLS -l で示される結果は一致しているのですが、ファイルサイズ(ls -lで示される値)の合計と一致しないのです。 OSはSolaris8です、よろしくお願いします。

  • linuxコマンド/複数のディレクトリに対して一括でファイルをコピー

    linuxコマンドについて質問です。 ある特定の1つのファイルを、複数のディレクトリに対して一括コピーはできなのでしょうか? root La Lb Lc -test.txt ↓実行後 root La-test.txt Lb-test.txt Lc-test.txt -test.txt root以下にあるファイル test.txt(root/test.txt)を root以下にあるディレクトリa,b,cにコピーしたいのです。 よろしくお願いいたします

  • ディレクトリのサイズを順番に表示したい

    # ls -la としても,ファイルのサイズは正確にでるのですが, ディレクトリのサイズがどれも512とか1024とかしかでません. これを正確に出力した上で, ディレクトリの大きさ順に出力いたいのですが どうすればよいでしょうか?

  • ls * で表示可能なファイル数はいくつ?

    lsコマンドでディレクトリのファイルをリスト化するのに ls *ではファイル数が多すぎてエラーになります。 lsコマンドで表示可能なファイル数はいくつでしょうか。

  • ディレクトリの内容

    環境はCygwinです。 ls -l とコマンドを打てばCygwin上にディレクトリの内容が表示されますが ls コマンドは打ち込まず, 自分で作成したプログラムで同じような動作をさせることは可能でしょうか? 作業ディレクトリ中のテキストファイルの名前をディレクトリから読み込んでCygwin上で表示させたいのですが・・・

  • linuxでディレクトリだけを表示させる方法

    あるディレクトリに以下のファイルとディレクトリがあった場合に dir1/ dir2/ file1 file2 lsだけだとすべて表示されるので、ファイルだけ表示やフォルダだけ表示させたいのですが可能でしょうか? フォルダだけ表示の場合 dir1/ dir2/だけ表示させたいのですが方法がわかりません。 よろしくお願いします。

  • solaris9 ディレクトリ内のファイル数をカウントする方法

    Solaris9を使用しておりますが、 ディレクトリ内のファイル数をカウントしたいと考えておりますが可能でしょうか? ディレクトリは階層的になっており、各々のディレクトにいくつのファイルが存在しているのかを調べたいと思っております。 (duコマンドのような感じでサイズではなく、ファイル数が分かればなぁ・・ といった感じです。) 宜しくお願い致します。