中間ディレクトリ変数を持つパターンを持つcpファイル

中間ディレクトリ変数を持つパターンを持つcpファイル

私はディレクトリlを持っています

── 10020
│   ├── live
│   │   ├── 211231.jpg
│   │   ├── 211231_BB.txt
│   │   ├── 448378.jpg
│   │   ├── 448378_BB.txt
│   │   ├── 460830.jpg
│   │   └── 460830_BB.txt
│   └── spoof
│       ├── 035383.jpg
│       ├── 035383_BB.txt
│       ├── 057847.jpg
│       ├── 057847_BB.txt
│       ├── 080343.jpg
│       ├── 080343_BB.txt
├── 10021
│   ├── live
│   │   ├── 013031.jpg
│   │   ├── 013031_BB.txt
│   │   ├── 025895.jpg
│   │   ├── 025895_BB.txt
│   └── spoof
│       ├── 006434.jpg
│       ├── 006434_BB.txt
│       ├── 021470.jpg
│       ├── 021470_BB.txt
│       ├── 027017.jpg
│       ├── 027017_BB.txt
├── 10022
│   ├── live
│   │   ├── 125401.jpg
│   │   ├── 125401_BB.txt
│   │   ├── 196573.jpg
│   │   └── 196573_BB.txt
│   └── spoof
│       ├── 013054.jpg
│       ├── 013054_BB.txt
│       ├── 015386.jpg
│       ├── 015386_BB.txt
│       ├── 016760.jpg
│       ├── 016760_BB.txt
│       ├── 020204.jpg
│       ├── 020204_BB.txt
├── 10023
│   ├── live
│   │   ├── 000240.jpg
│   │   ├── 000240_BB.txt
│   │   ├── 030384.jpg
│   │   ├── 030384_BB.txt
│   │   ├── 034898.jpg
│   │   ├── 034898_BB.txt
│   └── spoof
│       ├── 022241.jpg
│       ├── 022241_BB.txt
│       ├── 023855.jpg
│       ├── 023855_BB.txt
│       ├── 030252.jpg
│       ├── 030252_BB.txt
│       └── 475104_BB.txt
 [it goes on, as you guys suggested I put up the real directory rather than a simplified version]

*/live/*.jpgcpまたはmvの両方を実行して*/live/*.png 別のディレクトリに移動したいのですが、dir どうすればよいですか?

私が試したこと:

rsync -av ~/train/*/*.jpg dir
find ~train/ -type f -name '*/live/*.jpg' -exec cp '{}' dir ';'
rsync -a --include '*.jpg' --exclude 'live/*' ~/train/ dir

ベストアンサー1

find -path '/media/data/woreom/dataset/CelebA_Spoof/Data/train /*/real/*.jpg' -type f -exec cp '{}' /media/data/woreom/dataset/dataset/real/ ';'何もしませんでした。

/media/data/woreom/datase…現在の作業ディレクトリを調べるように求めたからです。

最初のパラメーターとして検索位置を指定する必要があります。代わりに(私の考えにはこれが効果があるようです。)

find /media/data/woreom/dataset/CelebA_Spoof/Data/train \
    -path '/*/real/*.jpg' -type f \
    -exec echo cp '{}' /media/data/woreom/dataset/dataset/real/ ';'

テストという言葉を追加し、echo正しく機能すると削除しました。

おすすめ記事