マニュアルページに入り、ls
オプション項目は-d
次のとおりです。
-d、--directoryコンテンツの代わりにディレクトリエントリを一覧表示し、シンボリックリンクを逆参照しません。
だから私はこのls -d
コマンドが与えられたディレクトリのすべてのディレクトリを表示すると思いました。しかし、私はディレクトリに行き、2つの異なるコマンドを試しました。
ディレクトリのインポート::
ls -l | grep ^d
動作し、7つのディレクトリがすべて表示されます。ディレクトリのインポート
ls -d
:これはいいえ7つのディレクトリ表示中の点は1つだけ表示される.
このオプションを間違って使用しているのか、それともその意味を間違って理解したのかわかりません。-d
このオプションの実際の意味と使い方は何ですか?
ベストアンサー1
ls -d
ディレクトリまたはシンボリックリンクに関する情報を表示します。この情報は(簡単に言えば)対応するパスです。論理的な仮定はD代表する目次なぜなら、私が遭遇したUNIX用語の最も基本的な定義は「ディレクトリのリスト」だからです。
表面的に、これはあまり効果がないようです。現在、2つのサブディレクトリがあるディレクトリにあるとします。
documents
music
オプションなしで使用すると、ls documents
コンテンツのリストが表示されます。文書上記で正確に指摘したように。を使用すると、ls -d documents
名前のみが印刷されます。フォルダパスは現在の場所に相対的なので、名前と同じです。文書!これは拡張することができ(デフォルトの使用法では多少冗長ですが)、ls -d $PWD/*
作業ディレクトリ(したがってPWD - 以前の作業ディレクトリ)を含むすべてのファイルとフォルダが表示されます。
*演算子と一緒に使用すると便利な機能があります。つまり、ls -d */
現在の作業ディレクトリのディレクトリのみが表示されます。
フォーカスを回すシンボリックリンク定義の一部ls -d ~
(チルダ拡張)を使用している場合は、現在のHOMEディレクトリへのパスが印刷されます。その後、これはOSによって異なるアプリケーションで使用でき、いくつかの実際の用途があります。ステートメントをさらに変更したり、ls -d ~your-username
そのユーザーにHOMEパスを提供したりできます。別の例は、Apacheサーバー環境で見ることができます。ユーザー名は、ホスティングスペース(HOMEディレクトリとは対照的)へのパスを同様に表示するために使用されます。ls -d ~another-username
ls -d ~root
これに使用できるさまざまな機能がありますが、この演算子の重要な機能は上記で説明されています。簡単に言えば、-dはディレクトリ/パス情報を表示するように特別に設計された演算子です。詳しく調べたい場合は、ls関数(一部の-d関数を含む)を使用する良いコードジェネレータがあります。LSコードジェネレータ。