Как я могу восстановить эти файлы?
Я использовал: mv ./*/* когда это должно было быть mv ./*/* . Теперь все мои файлы исчезли.
Я не думаю, что ваши файлы потеряны; это должно было случиться:
Предположим следующую структуру (dirs отмечены /)
.
|-- a/
| |-- a1
| |-- a2
| |-- a3
| `-- a4
|-- b/
| |-- b1
| |-- b2
| |-- b3
| `-- b4
|-- c/
`-- d/
|-- d1/
| `-- foo
|-- d2/
| `-- foo
|-- d3/
| `-- foo
`-- d4/
Во-первых, помните, что с Un * x не mv расширяет символы подстановки, а shell:
mv ./*/* . это расширяется до mv /a/a1 ./a/a2 ./a/a3 ./a/a4 ./b/b1 ./b/b2 ./b/b3 ./b/b4 ./d/d1 ./d/d2 ./d/d3 ./d/d4 .
и mv сделает то, что вы хотите, потому что целью (то есть самым последним аргументом) является каталог. Все (то есть все файлы / каталоги, заданные в качестве аргументов, кроме последнего) перемещается в текущий каталог (.).mv ./*/* this_is_a_file который будет расширен до mv /a/a1 ./a/a2 ./a/a3 ./a/a4 ./b/b1 ./b/b2 ./b/b3 ./b/b4 ./d/d1 ./d/d2 ./d/d3 ./d/d4 this_is_a_file и mv отказывается что-либо делать с помощью mv: target „this_is_a_file“ is not a directory . Ничто не перезаписывается и не перемещается.Теперь, к вашей команде: mv ./*/* расширяется до mv /a/a1 ./a/a2 ./a/a3 ./a/a4 ./b/b1 ./b/b2 ./b/b3 ./b/b4 ./d/d1 ./d/d2 ./d/d3 ./d/d4 . Как вы можете видеть в моем примере, случается, что последний аргумент является каталогом, который подходит для mv, и все перемещается туда - и вы в итоге получаете это дерево:
.
|-- a/
|-- b/
|-- c/
`-- d/
`-- d4/
|-- a1
|-- a2
|-- a3
|-- a4
|-- b1
|-- b2
|-- b3
|-- b4
|-- d1/
| `-- foo
|-- d2/
| `-- foo
`-- d3/
`-- foo
Я полагаю, у вас был похожий сценарий, и поэтому я считаю, что ваши файлы не исчезли, а просто попали куда-то глубже в иерархию.
Вы уверены, что они ушли?
Я считаю, что оболочка расширилась бы ./*/* в список файлов и каталогов. И если бы последним элементом в этом списке оказался каталог, команда mv бы его в качестве пункта назначения.
Если вы сначала сделали резервную копию, восстановитесь из резервной копии. В противном случае, попробуйте такой инструмент, как NTFS Undelete; Вы почти наверняка не вернете все, но, вероятно, вернете большинство вещей.