ls -aとls -Aを使用してください。 [閉じる]

ls -aとls -Aを使用してください。 [閉じる]

ls -a誰かがそれを乱用する理由がありますかls -A?つまり、役に立つことを示すことができますか、それを示したことがありますか.?私はそれが同じであるかどうかわからなかったので、 andなしで..使用した。私の質問に戻ります。普通ではないか、誰かが見たいと思うものが表示されたことがありますか?-a-A...-a...

答え1

最初はlsサポートのみ可能です-aが、すでにUnixの最初のバージョンでは1970年代初頭。

-A1970年代後半にBSDにオプションが追加されました(ls1980年代後半までは文書化されていませんが)。正確にはls -alist...ほとんど役に立たなかったからです。ls90年代初頭のGNU実装には最初からこの機能がありました(そこ--almost-allとも呼ばれます)。

POSIXは最終的に2008バージョンでこのオプションを指定したので、最終的に他のほとんどの実装lsでも機能します。しかし、その頃ならほとんどの人はls -a

ls -als -laこれは、ディレクトリ内のファイルに加えて、現在のディレクトリと親ディレクトリの権限、変更時間などを確認したい場合に便利です。

POSIXでは、対応する親ディレクトリ(および現在の作業ディレクトリと親ディレクトリ)をそれぞれ要求して解釈しますが、項目を返す必要もなく、dir/. 項目を物理ディレクトリとして実装する必要もありません。下記の項目はUnixの元のバージョンにあります。したがって、報告も報告もしないシステムを見つけることができます。 Linuxでは、複数のファイルシステムにディレクトリエントリとして保存されませんが(以下のシステムコール)、この場合でも依然として偽造されています。dir/..dir...readdir()......ls -a......readdir()getdents()

関連する(そしてより悪い)問題は、いくつかのシェルにおよび.拡張..が含まれていることです.*。それは原因rm -rf .rm -rf ..失敗たとえば、これらの殻の誤った特性に対する保護装置です。

答え2

マニュアルページによると、ls大きな違いはありません。

       -a, --all
              do not ignore entries starting with .

       -A, --almost-all
              do not list implied . and ..

-Aaで始まるすべての項目が一覧表示されますが、.項目の合計は省略され.ます..

答え3

私が見ることができる唯一の利点は、現在のディレクトリと親ディレクトリのリンク数です。これにより、親ディレクトリまたは現在のディレクトリの子ディレクトリの数に関する情報を取得できます。

関連情報