用于将子文件夹“提取”到父文件夹的脚本

塞巴斯蒂安

我想这有点棘手:-)

当我在文件夹中打开终端并运行脚本时,该脚本应:

  1. 将所有子文件夹的所有内容移动到顶级父文件夹(递归)
  2. 删除所有空文件夹

我们站立的父文件夹将不包含任何文件夹,仅包含所有文件夹的内容。

它也应该适用于隐藏的文件和文件夹。这对房屋打扫非常有用:-)

我已经尝试过类似的方法:

find . -type f -name "*" -depth | xargs mv ./

但是没有运气。

谢谢您的帮助 :-)

科斯

我认为最简单,最干净的方法是使用以下命令:

find . -type f -exec mv --backup=numbered {} . \; && find . -maxdepth 1 -type d -exec rm -r {} +

find 命令#1:

  • .:在当前工作目录中搜索;
  • -type f:搜索文件;
  • -exec [...]:对每个结果执行命令(使用{} [...] \;)或对所有结果执行命令(使用{} +);
  • mv --backup=numbered . \;:将每个结果移动到当前工作目录中,以当前工作目录中已经存在的相同文件名创建文件备份;

find 命令2:

  • .:在当前工作目录中搜索;
  • -maxdepth 1:仅在目标目录层次结构的第一级中搜索;
  • -type d:搜索目录;
  • -exec [...]:对每个结果执行命令(使用{} [...] \;)或对所有结果执行命令(使用{} +);
  • rm -r {} +:删除每个结果;

在测试目录层次结构上进行测试:

user@debian ~/tmp % tree -a
.
├── 1
│   ├── file1
│   ├── file2
│   ├── file3
│   └── .hidden
├── 2
│   ├── file1
│   ├── file2
│   ├── file3
│   └── .hidden
└── 3
    ├── file1
    ├── file2
    ├── file3
    └── .hidden

3 directories, 12 files
user@debian ~/tmp % find . -type f -exec mv --backup=numbered {} . \; && find . -type d -exec rm -r {} +
rm: refusing to remove "." or ".." directory: skipping "."
user@debian ~/tmp % tree -a
.
├── file1
├── file1.~1~
├── file1.~2~
├── file2
├── file2.~1~
├── file2.~2~
├── file3
├── file3.~1~
├── file3.~2~
├── .hidden
├── .hidden.~1~
└── .hidden.~2~

0 directories, 12 files

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

用于将子文件夹“提取”到父文件夹的脚本

来自分类Dev

htaccess - 将父文件夹重定向到父文件夹中的文件

来自分类Dev

Shell脚本将所有文件从子文件夹移动到父文件夹

来自分类Dev

Shell脚本将所有文件从子文件夹移动到父文件夹

来自分类Dev

将子文件夹中的所有文件移动到父文件夹

来自分类Dev

将子文件夹中的所有文件移动到父文件夹

来自分类Dev

用于创建每月文件夹并每月将文件移动到该文件夹的脚本

来自分类Dev

.htaccess将父文件夹重写为子文件夹

来自分类Dev

.htaccess将父文件夹重写为子文件夹

来自分类Dev

将子文件夹移动到父文件夹

来自分类Dev

将模块从子文件夹导入到父文件夹

来自分类Dev

终端脚本将文件分组到文件夹中

来自分类Dev

将编号文件分组到文件夹中的脚本

来自分类Dev

如何使用xcopy将子文件夹复制到子文件夹中?

来自分类Dev

将文件夹和子文件夹重定向到新文件夹(不携带任何子文件夹信息)

来自分类Dev

将(htaccess)子文件夹路由到文件

来自分类Dev

编译 Gulp 到父文件夹

来自分类Dev

bash shell 脚本:将文件夹内文件夹的特定内容从每个文件夹复制到桌面上的新文件夹

来自分类Dev

将子文件夹内的所有内容复制到主文件夹?

来自分类Dev

将所有子文件夹请求重定向到特定文件夹

来自分类Dev

htaccess 将文件夹重定向到子文件夹

来自分类Dev

将文件从子文件夹复制到父文件夹并使用父文件夹名称重命名文件

来自分类Dev

批处理脚本可根据当前的父名称将特定的子文件夹移动到新的父文件夹中

来自分类Dev

如何从bat脚本的变量中找到的父文件夹中删除子文件夹和文件?

来自分类Dev

在子文件夹树上应用脚本

来自分类Dev

PowerShell脚本将文件但不将子文件夹复制到SFTP并在完成后移至子文件夹

来自分类Dev

将子文件夹重定向到索引

来自分类Dev

删除子文件夹和文件而不删除父文件夹和子文件夹?

来自分类Dev

htaccess子域到文件夹

Related 相关文章

  1. 1

    用于将子文件夹“提取”到父文件夹的脚本

  2. 2

    htaccess - 将父文件夹重定向到父文件夹中的文件

  3. 3

    Shell脚本将所有文件从子文件夹移动到父文件夹

  4. 4

    Shell脚本将所有文件从子文件夹移动到父文件夹

  5. 5

    将子文件夹中的所有文件移动到父文件夹

  6. 6

    将子文件夹中的所有文件移动到父文件夹

  7. 7

    用于创建每月文件夹并每月将文件移动到该文件夹的脚本

  8. 8

    .htaccess将父文件夹重写为子文件夹

  9. 9

    .htaccess将父文件夹重写为子文件夹

  10. 10

    将子文件夹移动到父文件夹

  11. 11

    将模块从子文件夹导入到父文件夹

  12. 12

    终端脚本将文件分组到文件夹中

  13. 13

    将编号文件分组到文件夹中的脚本

  14. 14

    如何使用xcopy将子文件夹复制到子文件夹中?

  15. 15

    将文件夹和子文件夹重定向到新文件夹(不携带任何子文件夹信息)

  16. 16

    将(htaccess)子文件夹路由到文件

  17. 17

    编译 Gulp 到父文件夹

  18. 18

    bash shell 脚本:将文件夹内文件夹的特定内容从每个文件夹复制到桌面上的新文件夹

  19. 19

    将子文件夹内的所有内容复制到主文件夹?

  20. 20

    将所有子文件夹请求重定向到特定文件夹

  21. 21

    htaccess 将文件夹重定向到子文件夹

  22. 22

    将文件从子文件夹复制到父文件夹并使用父文件夹名称重命名文件

  23. 23

    批处理脚本可根据当前的父名称将特定的子文件夹移动到新的父文件夹中

  24. 24

    如何从bat脚本的变量中找到的父文件夹中删除子文件夹和文件?

  25. 25

    在子文件夹树上应用脚本

  26. 26

    PowerShell脚本将文件但不将子文件夹复制到SFTP并在完成后移至子文件夹

  27. 27

    将子文件夹重定向到索引

  28. 28

    删除子文件夹和文件而不删除父文件夹和子文件夹?

  29. 29

    htaccess子域到文件夹

热门标签

归档