Se movieron algunos archivos y no se puede usar mv ahora.

Se movieron algunos archivos y no se puede usar mv ahora.

Accidentalmente usé mv mymods /* *. Ahora no puedo deshacerlo ni usar ningún comando. ¿Cómo arreglo eso?

Estaba en el nombre del directorio./home/nginx/crap

[root@somehost /home/nginx/crap]# mv mymods /* *

Usuario de Centos 6.3 - root

Estructura de directorio de/home/nginx/crap

https://gist.github.com/anonymous/5493666

Respuesta1

Lo más probable es que haya movido los archivos a /*, que es esencialmente todo, dado que /es el directorio de nivel superior y mueve todo, *debajo de él. Supongo que mi pregunta sería ¿a dónde lo moviste?

Es posible que puedas mover todo hacia atrás si puedes averiguar dónde lo moviste. Tendrá que llamar al mvcomando directamente (es decir, /accident/dir/mv) dado que ahora está en otra ubicación, y no hay garantías de que pueda ejecutarlo dado que las bibliotecas que pueda necesitar no están donde se supone ser cualquiera de las dos cosas.

Sugeriría iniciar el sistema utilizando la capacidad del CD de rescate que viene con el CD/DVD de CentOS y permitirle montar su disco duro. Desde allí deberías poder usar el mvcomando del Live CD para reparar la instalación de Linux de tu HDD.

Respuesta2

Ese comando habría resultado en:

  1. Archivo o carpeta/home/nginx/crap/mymods
  2. Todos los directorios en/ (En teoria)
  3. Todos los archivos y directorios en/home/nginx/crap/

movido al último directorio proporcionado por *en /home/nginx/crap/. Como en:

ls -d /home/nginx/crap/*
afile1 afile2 dir1 dir2

Entonces todo se pondría en dir2...

Si la última entrada *fuera un archivo, el comando habría fallado ya que no se pueden mover archivos y carpetas a un archivo.

Como el último archivo de su gistpublicación es tree.txtlo más probable, no movió ningún archivo y sucedió algo más.

A ver si tienes el envcomando disponible.

información relacionada