「parent_folder」という名前の親フォルダーに多数のサブフォルダーがあり、これらのサブフォルダーには「foo.mp4」という名前のファイルがあります。
これを行うことで、これらのファイルを簡単に見つけることができます。
mymacbook:parent_folder username$ find ./ -name "foo.mp4" -exec echo {} \;
これで、parent_folder /を基準とした各ファイルのパスが返されます。
./path/to/foo.mp4
ファイル名なしでパスだけを返すにはどうすればよいですか?
その例を示してもらえますか?それを「-exec」またはそれより前に置くべきですか?
—
dubbelj 2015年
find ./ -name "foo.mp4" -printf "%h\n"
見つかった各ファイルのパスを出力します(1行ずつ)。さらに、いつものように誰も使用しないため-exec echo {}
、-print
(デフォルトでは省略されている)またはprintf
アクションがあります。
@Costas
—
ステファンChazelas
-printf
はGNUのみです。OPはOS / X(BSDシステム)について言及しています。
@StéphaneChazelasありがとう。OS / X(BSD)のそのような制限を知りませんでした。貧しいマックのユーザー!
—
Costas、2015年
-printf
%h
ファイル名の先頭ディレクトリ(最後の要素を除くすべて)。ファイル名にスラッシュが含まれていない場合(現在のディレクトリにあるため)、%h指定子は "。"に展開されます。。