現在のディレクトリのすべてのinodeをリストしたいと思います。一般ファイル(つまり、ディレクトリ、リンク、特殊ファイルではない)ls -la
(ll
)マークがあります。
man ls
検索してみると、type
この点についてよく理解できない内容だけが見つかりました。
--インジケータースタイル=WORD
アイテム名にWORDスタイルインジケータを追加します。なし(デフォルト)、スラッシュ(-p)、ファイルタイプ(--file-type)、カテゴリ(-F)
一般ファイルのみをリストするにはどうすればよいですかls -la
(ll
Ubuntu 18.04のショートカット)?
答え1
find . -maxdepth 1 -type f -ls
これにより、現在のディレクトリにあるものと同様の形式で通常のファイルが提供されます(ただし、コマンドラインのおかげで通常のファイルのみが表示されますls -lisa
)。-type -f
-ls
(BSDによって導入された)と-maxdepth
(GNUによって導入された)は非find
標準(現在は一般的ですが)拡張です。 POSIXlyでは、次のように書くことができます。
find . ! -name . -prune -type f -exec ls -ldi {} +
(これはファイルリストを並べ替えるという利点もありますが、現在のディレクトリに多数のファイルがある場合は、大きな独立チャンクで並べ替えることができます。)
答え2
答え3
-a を使用すると、隠しファイルとフォルダの両方が表示されます。 lsの代わりにfindコマンドを使用することもできます。これにより開始されます。
find -type f -exec ls -la {} \;
まず、検索したいディレクトリに変更する必要があります。