The command executed was "mv space *" in a folder with 14 GB of data.
mv *
du -hs
is the same so where has the 14 GB of data gone? What have I done?
The command executed was "mv space *" in a folder with 14 GB of data.
mv *
du -hs
is the same so where has the 14 GB of data gone? What have I done?
My guess is that bash expands the wildcard, and thus moves every folder into your last one.
For example:
$ ls
test1 test2 test3 test4
$ mv *
$ ls
test4
$ ls test4
test1 test2 test3
Here, mv * is expanded to mv test1 test2 test3 test4 corresponding to mv [OPTION]... SOURCE... DIRECTORY format. Thus, every folder is moved into the last one.
As described by @ssssteffff, with mv *, the shell is doing wildcard expansion from files in current directory. However the behaviour of mv command depends on how many arguments * expands to. If there are more than two arguments, then the last argument must be a directory:
mv [OPTION]... SOURCE... DIRECTORY
So,
I created 5 files
$ touch 1 2 3 4 5
$ ls
1 2 3 4 5
$ mv *
mv: target ‘5’ is not a directory
$ ls
1 2 3 4 5
Now if I create a directory which comes as a last parameter to wild-card expansion, then:
$ mkdir 6
$ mv *
$ ls
6
$ ls 6
1 2 3 4 5
You should double check what that last argument was.
Are you sure you didn't see the error something like this?
mv: target ‘5’ is not a directory`