内のすべてのファイルをコピーしたいとしdir
ますdest
。
$ tree .
.
├── dest
└── dir
├── dir
│ ├── file1
│ └── file2
└── file3
ファイル名とディレクトリの深さがわかっている場合、これは簡単です。
$ echo dir/f* dir/*/*
dir/file3 dir/dir/file1 dir/dir/file2
$ cp dir/f* dir/*/* dest/
$ tree dest/
dest/
├── file1
├── file2
└── file3
ディレクトリのみを取得するのも簡単です (globstar を使用)。
$ echo dir/**/*/
dir/dir/
しかし、ファイルのみをグロブする方法がわかりません。たとえば、次のようには機能しません。
$ echo dir/**/*!(/)
dir/**/*!(/)