• ベストアンサー

コマンド ls について

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

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

  • ベストアンサー
  • trajaa
  • ベストアンサー率22% (2662/11921)
回答No.1

"." そのディレクトリ自身を表すファイル。   ファイルを一定の構造に当て嵌めて読み出すと、そのフォルダに属するファイルの情報が収められているのを確認できる。 ".."そのディレクトリが属する親ディレクトリを表すファイル。  残念ながらそちら側は中身を詳しく確認したことは無い。

その他の回答 (3)

  • vaidurya
  • ベストアンサー率45% (2714/5983)
回答No.4

残念なお知らせです。 ./と../でディレクトリーを表すのは WindowsでもMacOSXでも行なわれます。 MS-DOSのDIRコマンドにオプションなしだと.\,..\が表示されてたから 現在のWindowsのCMD上でも、標準で.\とか出るんじゃないかな? 対して、Linuxでは、実用上無意味な二項目は表示されないのが標準。 これ、lsの出力を、grepやスクリプト言語で処理する際にも よけいなノイズを生まないので便利。 たとえば同じディレクトリーで、MS-DOSの"DIR|GREP -v TEST|WC -l"と UNIX系OSの"ls|grep -v TEST|wc -l"を行ない比較すると 後者はTESTを含まないファイル名がカウントされるけど 前者では、よけいな二行分多く表示される。 また、HTMLの記述をまっとうに学ぶと ディレクトリーの相対指定の手法として やはり./や../を使った記述が紹介されます。 相対指定は、コマンドラインでのファイル操作には 必須のものだと思います。 そういうのを使いこなせると便利です。 (というかcd ..を使わなかったらはげしく不便)

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

調べるというか、まずはLinux入門書を読んだ方が良いと思います。 ◎カレントディレクトリを1つ上位に移す。 cd .. とか、 ◎カレントディレクトリにある、sample という名前のプログラムを実行する。 ./sample などと説明されているはずです。

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.2

#1で回答は出ていますが、それとは別に-lオプションは「詳細表示」であってcurrent directoryやparent directoryを表示するだけなら-aで十分です。 ls -aやってみればすぐわかる話ですが、念のため。

関連するQ&A

  • lsコマンドのオプションについて

    Linuxのlsコマンドのオプションについて質問です。 以下のオプションの意味が良く分かりません。具体的にどういうことなのでしょうか。 また、実際の現場では良く使われるオプションですか? -F:タイプ識別子 (*/=>@| のうちの一つ) を付けて出力する

  • lsコマンドについて

    linux 初心者です。lsコマンドの-sをしようした場合ファイルのサイズがわかると言うことですが、まずファイルの詳細がわかるという-lで調べたらサイズ5994byteと出ていたのですが、次に-sで調べたら8(kbyte)と出てしまうのですがどちらが正しいのでしょうか?またどうしてこのような結果が出てきたのかわかる方いたらご教授よろしくお願いします。

  • ターミナルのls コマンドについて

    macbook OS X 10.5.6 を使っています. PC初心者です. Terminal で,あるディレクトリの中身を調べる時に,サブディレクトリの中身まで含めて全て表示させるためにはどうすればよいのでしょうか. 例えば,ディレクトリAの中に「テキストファイルB,ディレクトリC」があり,さらに,ディレクトリCの中に「テキストファイルD」があるとします. このとき,ls コマンドでディレクトリA の内容を表示させようとすると, テキストファイルB とディレクトリC が表示され,ディレクトリCの中身(ここではテキストファイルD)までは表示されません. 私はディレクトリCの中身まで含めて一括で表示させたいのですが,その方法が分かりません. このようなやり方をご存じの方がいらっしゃったら,お教え下さい. 何かやり方があるならば,ls コマンドにこだわる必要は全くありません.

    • ベストアンサー
    • Mac
  • Cygwinのlsコマンドについて

    Cygwinの場合、以下のオプションでlsコマンドを実行すると $ ls --full-time -rwxr-xr-x 1 aaaa なし 139 2006-08-23 15:01:34.203125000 +0900 ls.sh と表示されます。 Linux(redhat)上で同様のコマンドを実行すると、 $ ls --full-time -rwxr-x--- 6 root root 4096 Wed Aug 09 16:59:03 2005 ls.sh と表示されます。 タイムスタンプの表示形式が異なっていますが、 Cygwin上で、Linuxのような表記をしたいのですが、 可能でしょうか。ご教授お願い致します。

  • findの結果をlsで詳細表示

    はじめまして。 Linux初心者です。 カレントディレクトリ以下のディレクトリやファイルの一覧を詳細表示するには「find ./ | xargs ls -lF」などとすると思いますが xargsを使用せずに「find ./ | ls -lF」とすると、なぜNGなのでしょうか。「xargs」の意味を調べると、 (1) 標準入力から空白か改行で区切られた文字列群を読み込む。 (2) xargsの引数のコマンドの後ろに、標準入力から受け取った文字列群を付け足して、そのコマンドを実行する。 とありました。上記の説明で「xargs」を付けることによる効果はわかるのですが、ls以外のコマンドを使用する際にもfindと組み合わせる際には、 すべてのコマンドで「xargs」を使用しなければいけないのでしょうか。 lsの結果をmoreする際などには、「ls | more」で良いと思うのですが、 「ls | xargs more」としない理由がわかりません。 どなたかわかりやすく教えて頂ければ幸いです。 よろしくお願いします。

  • 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点、 ご教授お願いします。

  • execからのls grepコマンドについて

    PHPで階層になっているディレクトリ名をすべて取得するプログラムを作成しています。 ディレクトリ数、ファイル数が非常に多いので動作速度向上のためにlinuxコマンドで取得するために以下の命令を記述しました。 exec("ls -l | grep '^d' ./hogehoge/hugahuga/",$aDir); var_dump($aDir); これを実行しても $aDirに値が入りません。 どうすれば望みどおりの結果になるでしょうか。

    • 締切済み
    • PHP
  • UNIXのコマンド教えて下さい。

    UNIXで、lsの結果をファイルに出力する際、 ls > aaa.txtのようにすると出来ますが、 実行したコマンド "ls -la > aaa.txt" もファイルに出力させたいのですが、どうすれば出来ますか? 知ってる方教えて下さい!

  • ディレクトリ内容を一覧に書き出すコマンド?

    LSコマンドでは、ディレクトリ内容を画面表示できますよね?それをテキストファイル等に書き出すことは可能でしょうか? TARコマンドで一まとめにしてGZIPにする際、ディレクトリ内容が全く分からない状態では後々困るだろうと思うので質問します。画面キャプチャしてイメージ保存しかありませんか?ちなみに、Linuxについての知識は乏しいです。

  • find -perm -o+w -exec ls -la {} \;

    タイトルのコマンドに関しまして、条件(他のユーザーに書き込み権限が与えられているファイルを検索)にマッチしたファイルの詳細を表示するコマンドで間違いないと思いますが、『{}』 は何を指しているのでしょうか? これが、ワイルドカードの『{}』を表しており、中身を指定していないのならば、[]でも代用できるはず。と思い、 $find -perm -o+w -exec ls -la [] \; としたら、lsコマンドに怒られてしまいました。 {}を指定しなかった場合は、期待に沿わない実行結果(マッチしたファイルの数だけ ls -la が実行される)が得られます。 『{}』は、何を意味しているのでしょうか? ご回答の程、お願いします。