親ディレクトリとそのサブディレクトリ内のすべてのファイルを一覧表示しようとしています。ただし、別の場所からこのコマンドを実行しています。したがって、最初に、(このコマンドを実行したい場所から) ディレクトリにトラバースする必要があります。
ls の代わりに find コマンドを使用していることに注意してください。これは、その前に各ファイルの絶対パスもリストしたいためです。これは ls コマンドでは不可能です。
ここに私がやっていることがあります:
cd ../../../;cd level1_dir1;find $(pwd) . -name *.* -printf "%TY-%Tm-%Td\t%p\n"
このコマンドは出力を表示しません。
ディレクトリ構造は次のとおりです。
level1_dir1
これには複数のサブディレクトリがあります。
level2_dir1
level2_dir2
....
level2_dir10
これらのサブディレクトリのそれぞれにも、その中にサブディレクトリとファイルがあります。
ただし、今私が行う場合:
cd ../../../;cd level1_dir1/level2_dir1;find $(pwd) . -name *.* -printf "%TY-%Tm-%Td\t%p\n"
level2_dir1 のすべてのサブディレクトリに対して再帰が適切に実行され、次のような出力が表示されます。
date level1_dir1/level2_dir1/path/to/file/filename
したがって、次のように (ワイルド文字を使用して) すべてのレベル 2 ディレクトリを出力したいと考えました。
cd ../../../;cd level1_dir1/*;find $(pwd) . -name *.* -printf "%TY-%Tm-%Td\t%p\n"
ただし、レベル2の最初のディレクトリ(つまり、level2_dir1)の結果のみを出力します
すべてのサブディレクトリのファイルを一覧表示するにはどうすればよいですか?
ありがとう。