ウェブサイトの移行作業を行っています。 URLに表示されるすべてのファイルとディレクトリ構造を含むWebサイトのスクリーンショットがあります。すべての画像を抽出し、ディレクトリ構造を維持し、新しい場所にコピーしたいと思います。
たとえば、私が持っている場合
/content1/index.php
/content1/page2.php
/content1/images/image1.jpg
/content1/images/image2.jpg
/content1/background/spacer.gif
/content1/background/background.gif
/content2/index.php
/content2/images/image3.jpg
/content2/background/spacer.gif
/content2/background/background.gif
だから私は欲しい
/content1/images/image1.jpg
/content1/images/image2.jpg
/content1/background/spacer.gif
/content1/background/background.gif
/content2/images/image3.jpg
/content2/background/spacer.gif
/content2/background/background.gif
コマンドを使用してイメージファイルのリストのみを取得できますが、find
ディレクトリパスを維持しながら各ファイルを操作する方法がわかりません。
ディレクトリ全体をコピーしてから画像ではなくファイルを再帰的に削除することはできますが、今この問題を自分自身の前に設定したので、実際にこれを行う必要がある場合に備えてどのように行うかを知る価値があると思います。未来。 。
ベストアンサー1
次のコマンド(find
およびcp
オプション--parent
)を試してください。
find /source -regextype posix-extended -regex '.*(gif|jpg)' \
-exec cp --parents {} /dest \; -print