始める前に、私はUNIXの基本的な知識しか持っていないとします。基本的な意味私は先週、仕事関連の目的でこの本を読み始めました。
ls
私はこのコマンドを使用してビデオメディアを含む特定のディレクトリのリストを提供しようとしました。見せなければなりませんファイル名、ファイルサイズそして日付それは作成されました。次のコマンドを使用してこれを達成しました。
ls -gohU
問題ありませんが、検索にはそのディレクトリ内のサブディレクトリも含まれます。検索後にファイルを表示し、フォルダを除外する別のコマンドが見つかりました。
find . -maxdepth 1 -not -type d
サブディレクトリを除くディレクトリ内のすべてのファイルを参照して表示できるコマンドがあるかどうかを知りたいです。ファイル名、サイズそして日付彼らは作成されました。
PSに役立つ場合は、Mac OS 10.6.8でTerminal - bashも使用しています。
答え1
-exec
自分に合った2つのコマンドを組み合わせるには、このオプションを使用します。
find . ! -name . -prune ! -type d -exec ls -gohU {} +
答え2
最初の文字がdの場合、ファイルはディレクトリです。別の文字で始まる行をリストするには、次のようにします。
ls -gohU | grep '^[^d]'
答え3
ls
特定のフィールドのみが必要な場合は、OS / Xコマンドを使用できますstat
。
find . ! -name . -prune ! -type d -exec stat -t '%FT%T' -f '%15z %SB %N' {} +
または以下を使用してzsh
:
command stat -t '%FT%T' -f '%15z %SB %N' -- *(D^/)
(%B
はls -U
OS / Xに固有のものであり、通常は他のUnicesでは使用できません。インデックスノードの誕生時間)。
答え4
ほとんどのfindサポートオプションバージョンでは、次の事項が-ls
お客様の要件に適合している必要があります。
find . -maxdepth 1 -type f -ls