Я случайно использовал mv mymods /* *
. Теперь я не могу отменить это или использовать какую-либо команду. Как это исправить?
Я был в каталоге имя/home/nginx/crap
[root@somehost /home/nginx/crap]# mv mymods /* *
Пользователь Centos 6.3 - root
Структура каталога/home/nginx/crap
решение1
Вы, скорее всего, переместили файлы в /*
, что по сути все, учитывая, /
что это каталог верхнего уровня, и вы перемещаете все, *
, под него. Думаю, мой вопрос будет в том, куда вы это переместили?
Вы можете вернуть все обратно, если сможете выяснить, куда вы это переместили. Вам придется вызвать команду mv
напрямую (т. е. /accident/dir/mv
), учитывая, что теперь она находится в другом месте, и нет никаких гарантий, что вы сможете ее запустить, учитывая, что любые библиотеки, которые могут ей понадобиться, также не находятся там, где им положено быть.
Я бы посоветовал загрузить систему с помощью спасательного CD, который идет с CentOS CD/DVD, и разрешить ему смонтировать ваш HDD. Оттуда вы сможете использовать команду Live CD mv
для восстановления установки Linux на вашем HDD.
решение2
Результатом этой команды было бы:
- Файл или папка
/home/nginx/crap/mymods
- Все каталоги на
/
(в теории) - Все файлы и каталоги в
/home/nginx/crap/
перемещен в последний каталог, указанный *
в /home/nginx/crap/
. Как в:
ls -d /home/nginx/crap/*
afile1 afile2 dir1 dir2
Затем все будет помещено в dir2
.
Если бы последняя запись *
была файлом, команда бы не была выполнена, поскольку вы не можете перемещать файлы и папки в файл.
Поскольку последний файл в вашем gist
сообщении, tree.txt
скорее всего, вы не переместили ни одного файла, а произошло что-то еще.
Проверьте, доступна ли у вас эта env
команда.