将所有内容移动到新的子文件夹

旋转木马

我有一个用于 linux 的 shell 脚本,它位于基本级文件夹中testing,将进入该original目录,将所有内容复制到该input文件夹中,然后在每个子目录中input执行三个任务:

  1. 创建一个名为的新文件夹 tip
  2. 把里面的所有文件放入 tip
  3. 创建第二个名为的新文件夹 sorted

当我在命令行上测试它时,我遇到的唯一问题是,由于我tip在将所有内容移入文件夹之前创建了该文件夹,因此它会返回一个错误,即它无法在自身内部移动文件夹——这很好,无论如何。但是,当我在 NiFi 中运行它时,它会给我一个不同的错误 ( cannot create directory tip: file exists) 并且行为不同。

脚本

#!/bin/bash

# copy to input while maintaining file structure
cd /data/testing/original
cp -r * /data/testing/input
cd /data/testing/input

# for each subfolder in input, create tip & sorted, and move all of the original stuff into tip
for dir in /data/testing/input/*
do
  test -d "$dir" || continue
  cd "$dir" && mkdir tip && mv * tip/
  mkdir sorted
done

中每个子文件夹中的预期输出 /data/testing/input/subfolder/

sorted -> empty
tip -> media folder, file1, file2

实际产量

sorted -> empty
tip -> media folder, file1, file2
media folder
file1
file2

我究竟做错了什么?

格伦杰克曼
shopt -s extglob 

# trailing slash forces the results to be dirs
# ..............................v
for dir in /data/testing/input/*/; do 
  (
    cd "$dir" && mkdir tip sorted && mv -t tip/ !(tip|sorted)
    # ..........................................^^^^^^^^^^^^^
    #               anything *not* matching "tip" or "sorted"
  )
  # run above in a subshell so you don't have to cd back to parent dir
done

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将除一个文件夹外的所有文件夹移动到子目录-git

来自分类Dev

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

来自分类Dev

Mailkit。将现有文件夹及其所有子文件夹和消息移动到另一个文件夹的最佳方法是什么?

来自分类Dev

批处理文件以删除特定的子文件夹,但首先将其中的所有内容移动到外部

来自分类Dev

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

来自分类Dev

如何将所有同级文件夹移动到一个文件夹中?

来自分类Dev

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

来自分类Dev

Windows-如何将子文件夹中的所有文件移动到父文件夹?

来自分类Dev

将图像从子文件夹移动到新的子文件夹

来自分类Dev

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

来自分类Dev

将所有文件从一个文件夹移动到上层文件夹

来自分类Dev

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

来自分类Dev

如何将文件夹的内容移动到当前文件夹?

来自分类Dev

将文件/文件夹移动到新结构

来自分类Dev

将嵌套文件夹的所有文件移动到其他文件夹

来自分类Dev

将包含字符串的所有文件从多个子文件夹移动到父文件夹中

来自分类Dev

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

来自分类Dev

将所有在<time>之后修改的文件夹移动到新文件夹

来自分类Dev

批处理文件以在文件夹中创建新的子文件夹,将文件移动到目录中所有文件夹的新创建的子文件夹

来自分类Dev

将除一个子文件夹外的所有子文件夹移动到该子文件夹中

来自分类Dev

如何将当前文件夹中的所有文件移动到子文件夹?

来自分类Dev

将.net项目安全地移动到具有参考更新的子文件夹

来自分类Dev

如何将所有与模式匹配的文件移动到文件夹中?

来自分类Dev

创建同名的新子文件夹并将文件移动到新文件夹

来自分类Dev

将文件移动到有例外的文件夹中

来自分类Dev

GIT:将父/子文件夹的所有内容移动到父/

来自分类Dev

将所有相同扩展名的文件移动到一个文件夹

来自分类Dev

如何将所有子文件夹移动到另一个文件夹保存树?

来自分类Dev

如何使用bash将子文件夹中的所有文件移动到新文件夹中?

Related 相关文章

  1. 1

    将除一个文件夹外的所有文件夹移动到子目录-git

  2. 2

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

  3. 3

    Mailkit。将现有文件夹及其所有子文件夹和消息移动到另一个文件夹的最佳方法是什么?

  4. 4

    批处理文件以删除特定的子文件夹,但首先将其中的所有内容移动到外部

  5. 5

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

  6. 6

    如何将所有同级文件夹移动到一个文件夹中?

  7. 7

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

  8. 8

    Windows-如何将子文件夹中的所有文件移动到父文件夹?

  9. 9

    将图像从子文件夹移动到新的子文件夹

  10. 10

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

  11. 11

    将所有文件从一个文件夹移动到上层文件夹

  12. 12

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

  13. 13

    如何将文件夹的内容移动到当前文件夹?

  14. 14

    将文件/文件夹移动到新结构

  15. 15

    将嵌套文件夹的所有文件移动到其他文件夹

  16. 16

    将包含字符串的所有文件从多个子文件夹移动到父文件夹中

  17. 17

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

  18. 18

    将所有在<time>之后修改的文件夹移动到新文件夹

  19. 19

    批处理文件以在文件夹中创建新的子文件夹,将文件移动到目录中所有文件夹的新创建的子文件夹

  20. 20

    将除一个子文件夹外的所有子文件夹移动到该子文件夹中

  21. 21

    如何将当前文件夹中的所有文件移动到子文件夹?

  22. 22

    将.net项目安全地移动到具有参考更新的子文件夹

  23. 23

    如何将所有与模式匹配的文件移动到文件夹中?

  24. 24

    创建同名的新子文件夹并将文件移动到新文件夹

  25. 25

    将文件移动到有例外的文件夹中

  26. 26

    GIT:将父/子文件夹的所有内容移动到父/

  27. 27

    将所有相同扩展名的文件移动到一个文件夹

  28. 28

    如何将所有子文件夹移动到另一个文件夹保存树?

  29. 29

    如何使用bash将子文件夹中的所有文件移动到新文件夹中?

热门标签

归档