当我“mv *”时发生了什么?没有显示错误,现在只剩下一个文件夹。为什么?

use*_*965 12 mv

执行的命令是一个包含 14 GB 数据的文件夹中的“mv space *”。

mv *

du -hs 
Run Code Online (Sandbox Code Playgroud)

是一样的,那么 14 GB 的数据去哪儿了?我做了什么?

sss*_*fff 31

我的猜测是 bash 扩展了通配符,从而将每个文件夹移动到您的最后一个文件夹中。

例如:

$ ls
test1  test2  test3  test4

$ mv *

$ ls
test4

$ ls test4
test1  test2  test3
Run Code Online (Sandbox Code Playgroud)

这里,mv *扩展为mv test1 test2 test3 test4对应的mv [OPTION]... SOURCE... DIRECTORY格式。因此,每个文件夹都移动到最后一个。

  • 这个。顺便说一下,如果你想在 `mv`(或 `cp`)中使用 `*`,那么看看他们的 `--target-directory` 开关。它确保你不会被这样的事情所困扰。 (9认同)

归档时间:

查看次数:

1090 次

最近记录:

11 年 前