将所有文件和目录移动到目标目录

维科

我有目录结构:

~/MYDIR/
  /DESTINATIONDIR/
  /DIR1/
  /DIR2/
  /file1
  /file2

我需要移动DIR1, DIR2,file1,file2DESTINATIONDIR

从终端执行此操作的最优雅,最佳方式是什么?

UPD:假设我们还有更多名称不同的文件和目录

它是

我会考虑采用三种方式。

骇客且容易出错,“移动所有内容”

mv ~/MYDIR/* ~/MYDIR/DESTINATIONDIR

这将尝试将目的地移动到其自身中并爆炸:

mv: cannot move ‘~/MYDIR/DESTINATIONDIR’ to a subdirectory of itself, ‘~/MYDIR/DESTINATIONDIR/DESTINATIONDIR’

但是它将(几乎)移动其他所有东西。这样就可以了,但是有点混乱。如果您需要匹配隐藏文件,请shopt -s dotglob事先运行,它将起作用。

手动移动文件列表

鉴于事情的清单很短,我们可以很轻松地将它们列出来,并进行一些bash扩展:

 mv ~/MYDIR/{DIR{1,2},file{1,2}} ~/MYDIR/DESTINATIONDIR

如果您需要使用此方法隐藏文件,只需将它们包括在列表中即可。

如果此列表来自其他内容(例如find),则很难确保目的地是最后一个参数。您可以使用-t参数将目的地移到最前面这是一个可怕的例子,但在需要时突出显示:

find ~/MYDIR/ -maxdepth 1 ! -name DESTINATIONDIR -exec mv -t ~/MYDIR/DESTINATIONDIR {} +

逆向shopt定义,优雅。

因此,让我们在手动列出和通配符之间取得平衡。通过打开Bash中的扩展globbing功能,我们可以选择[几乎]除了目标目录之外的所有内容

shopt -s extglob
mv ~/MYDIR/!(DESTINATIONDIR) ~/MYDIR/DESTINATIONDIR

如果您需要匹配隐藏文件,请shopt -s dotglob事先运行,它将起作用。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将所有文件和目录移动到目标目录

来自分类Dev

Shell脚本,用于将文件从源目录移动到目标目录

来自分类Dev

如何一次将多个文件移动到特定的目标目录?

来自分类Dev

如何一次将多个文件移动到特定的目标目录?

来自分类Dev

将所有文件和目录移动到Windows中的新子目录

来自分类Dev

如何将所有带有批处理文件移动的文件登录到文本文件中,并且目标目录包含在日志中?

来自分类Dev

使用文件结构将所有文件从源目录复制到C#中的目标目录

来自分类Dev

使用node.js将目录中的所有文件移动到父目录

来自分类Dev

如何将子目录中的所有文件递归移动到单个目录?

来自分类Dev

如何将所有文件从当前目录移动到上层目录?

来自分类Dev

如何将子目录中的所有文件递归移动到单个目录?

来自分类Dev

如何使用bash将所有文件从多个目录移动到其父目录

来自分类Dev

将所有文件从子目录移动到父目录

来自分类Dev

将单个共享目录用作所有项目的Cargo目标目录是否可以?

来自分类Dev

将目录中的所有文件移动到同一目录中的新子目录

来自分类Dev

创建顺序编号的目标目录和批处理移动文件的命令

来自分类Dev

如何通过终端命令将所有文件和目录复制或移动到其他用户

来自分类Dev

使用 .htaccess 和将所有文件移动到 Web 根目录之外是否存在安全差异?

来自分类常见问题

如何通过*将所有文件(包括隐藏文件)移动到父目录中

来自分类Dev

将所有文件移动到文件名开头的子目录中

来自分类Dev

将所有文件移动到以部分文件名命名的子目录中

来自分类Dev

如何在目标目录中递归地压缩所有文件?

来自分类Dev

FTP 删除目标目录中的所有文件夹

来自分类Dev

将所有具有相同名称的文件从子目录移动到一个目录中

来自分类Dev

将文件拆分为N个具有相同名称但目标目录不同的文件

来自分类Dev

OSX Terminal命令将所有文件移动到目录中

来自分类Dev

如何将所有Java源文件移动到它们各自的包目录中?

来自分类Dev

如何将所有Java源文件移动到它们各自的包目录中?

来自分类Dev

将文件解压缩到目标目录?

Related 相关文章

  1. 1

    将所有文件和目录移动到目标目录

  2. 2

    Shell脚本,用于将文件从源目录移动到目标目录

  3. 3

    如何一次将多个文件移动到特定的目标目录?

  4. 4

    如何一次将多个文件移动到特定的目标目录?

  5. 5

    将所有文件和目录移动到Windows中的新子目录

  6. 6

    如何将所有带有批处理文件移动的文件登录到文本文件中,并且目标目录包含在日志中?

  7. 7

    使用文件结构将所有文件从源目录复制到C#中的目标目录

  8. 8

    使用node.js将目录中的所有文件移动到父目录

  9. 9

    如何将子目录中的所有文件递归移动到单个目录?

  10. 10

    如何将所有文件从当前目录移动到上层目录?

  11. 11

    如何将子目录中的所有文件递归移动到单个目录?

  12. 12

    如何使用bash将所有文件从多个目录移动到其父目录

  13. 13

    将所有文件从子目录移动到父目录

  14. 14

    将单个共享目录用作所有项目的Cargo目标目录是否可以?

  15. 15

    将目录中的所有文件移动到同一目录中的新子目录

  16. 16

    创建顺序编号的目标目录和批处理移动文件的命令

  17. 17

    如何通过终端命令将所有文件和目录复制或移动到其他用户

  18. 18

    使用 .htaccess 和将所有文件移动到 Web 根目录之外是否存在安全差异?

  19. 19

    如何通过*将所有文件(包括隐藏文件)移动到父目录中

  20. 20

    将所有文件移动到文件名开头的子目录中

  21. 21

    将所有文件移动到以部分文件名命名的子目录中

  22. 22

    如何在目标目录中递归地压缩所有文件?

  23. 23

    FTP 删除目标目录中的所有文件夹

  24. 24

    将所有具有相同名称的文件从子目录移动到一个目录中

  25. 25

    将文件拆分为N个具有相同名称但目标目录不同的文件

  26. 26

    OSX Terminal命令将所有文件移动到目录中

  27. 27

    如何将所有Java源文件移动到它们各自的包目录中?

  28. 28

    如何将所有Java源文件移动到它们各自的包目录中?

  29. 29

    将文件解压缩到目标目录?

热门标签

归档