[英]Copy every file of entire directory structure into base path of another
I have a directory-tree with a lot of files in it. 我有一个目录树,里面有很多文件。 I'd like to copy all of those files into one new directory, but with all files located in the base of the folder.
我想将所有这些文件复制到一个新目录中,但所有文件都位于文件夹的基础中。
So I have something like this: 所以我有这样的事情:
images
├── avatar.png
├── bg.jpg
├── checkbox.png
├── cross.png
├── datatables
│ ├── back_disabled.png
│ ├── back_enabled.png
│ ├── forward_disabled.png
│ ├── forward_enabled.png
│ ├── sort_asc.png
│ ├── sort_asc_disabled.png
│ ├── sort_both.png
│ ├── sort_desc.png
│ └── sort_desc_disabled.png
├── exclamation.png
├── forms
│ ├── btn_left.gif
│ ├── btn_right.gif
│ ├── checkbox.gif
│ ├── input
│ │ ├── input_left-focus.gif
│ │ ├── input_left-hover.gif
│ │ ├── input_left.gif
│ │ ├── input_right-focus.gif
│ │ ├── input_right-hover.gif
│ │ ├── input_right.gif
│ │ ├── input_text_left.gif
│ │ └── input_text_right.gif
│ ├── radio.gif
│ ├── select_left.gif
│ ├── select_right.gif
And I'd like something like this: 我想要这样的事情:
new_folder
├── avatar.png
├── bg.jpg
├── checkbox.png
├── cross.png
├── back_disabled.png
├── back_enabled.png
├── forward_disabled.png
├── forward_enabled.png
├── sort_asc.png
├── sort_asc_disabled.png
├── sort_both.png
├── sort_desc.png
├── sort_desc_disabled.png
├── exclamation.png
├── btn_left.gif
├── btn_right.gif
├── checkbox.gif
├── input_left-focus.gif
├── input_left-hover.gif
├── input_left.gif
├── input_right-focus.gif
├── input_right-hover.gif
├── input_right.gif
├── input_text_left.gif
├── input_text_right.gif
├── radio.gif
├── select_left.gif
├── select_right.gif
I'm pretty sure there is a bashcommand for that, but I haven't found it yet. 我很确定有一个bashcommand,但我还没有找到它。 Do you have any ideas?
你有什么想法?
CS CS
find /source-tree -type f -exec cp {} /target-dir \;
you are looking for ways to flatten the directory 您正在寻找展平目录的方法
find /images -iname '*.jpg' -exec cp --target-directory /newfolder/ {} \;
find
all files iname
in case insensitive name mode. 在不区分大小写的名称模式下
find
所有文件iname
。
cp
copy once to --target-directory
named /newfolder/
. cp
复制一次到--target-directory
命名为/newfolder/
。
{}
expand the list from find
into the form of /dir/file.jpg /dir/dir2/bla.jpg
. {}
将列表从find
扩展为/dir/file.jpg /dir/dir2/bla.jpg
。
在zsh上 :
cp /source/**/* /destination
$ cd images && cp ** new_folder/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.