1. Manipulación de archivos

Todos los datos están en archivos: documentos de oficina, canciones, películas, etc. Presentamos algunos comandos para organizar y administrar esos archivos.

1.1. Listar el contenido de un directorio

ls ( LiSt) es equivalente al comando de DOS dir. Su sintaxis es la siguiente:

ls 
      <directorio> 

Las opciones más comunes son:

  • -R: lista recursivamente los contenidos del directorio y todos sus subdirectorios. Por favor tenga en cuenta que antes de mostrar los contenidos de un directorio, se muestra el nombre del directorio en sí mismo.

  • -l: utiliza un formato de listado extendido. Se muestran detalles sobre el archivo tales como el tipo de archivo, permisos, dueño y tamaño.

  • -a: muestra también los archivos ocultos. En sistemas UNIX ®, todos los archivos cuyo nombre comienza con un punto ( .) están ocultos. Utilice esta opción para mostrar tales archivos cuando liste un directorio. Si no desea que el directorio actual y su padre (a saber, . y ..) se muestren, utilice en cambio la opción -A.

Algunos ejemplos:

  • ls -lA /tmp/peliculas /tmp/imagenes: lista los contenidos de los directorios peliculas e imagenes dentro del directorio /tmp, mostrando los detalles de los archivos y los archivos ocultos, pero sin mostrar las entradas . y .. para cada directorio;

  • ls -R ~/: muestra, recursivamente, todos los archivos y directorios que tiene dentro de su directorio personal.

1.2. Copiar

cp ( CoPy) es equivalente a los comandos de DOS copy y xcopy pero tiene más opciones. Su sintaxis es la siguiente:

      cp  <archivo|directorio>
       <destino>

Las opciones más comunes son:

  • -R: copia recursiva; obligatorio para copiar un directorio, aunque esté vacío.

  • -f: reemplaza cualquier archivo existente sin pedir confirmación. Utilizar con cuidado.

  • -a: modo de archivo, preserva todos los atributos del archivo en la copia y ejecuta una copia recursiva.

  • -v: modo verboso, muestra todas las acciones ejecutadas por cp.

Algunos ejemplos:

  • cp -f /tmp/imagenes/* imagenes/: copia todos los archivos del directorio /tmp/imagenes al directorio imagenes ubicado en el directorio actual. No pide confirmación si se está por sobreescribir un archivo.

  • cp -vR docs/ /compartidos/mp3s/* miscosas/: copia el directorio docs completo, más todos los archivos del directorio /compartidos/mp3s al directorio miscosas, mostrando todas las acciones ejecutadas.

  • cp toto pepe: hace una copia del archivo toto con el nombre pepe en el directorio actual.

1.3. Mover

mv ( MoVe) es equivalente al comando de DOS move. Su sintaxis es la siguiente:

      mv  <archivo|directorio>
       <destino>

Tenga en cuenta que cuando mueva archivos múltiples el destino debe ser un directorio. Para renombrar un archivo, simplemente muévalo al nuevo nombre.

Las opciones más comunes son:

  • -f: fuerza la operación. No se muestran advertencias si se está por sobreescribir un archivo existente. Utilizar con cuidado.

  • -v: modo verboso, informa todos los cambios y actividad.

Algunos ejemplos:

  • mv /tmp/pics/*.png .: mueve todos los archivos del directorio /tmp/pics cuyos nombres terminan en .png al directorio actual.

  • mv toto pepe: renombra el archivo toto a pepe. Si un directorio pepe ya existía, el efecto de este comando será mover el archivo toto o el directorio completo (el propio directorio más todos los archivos y directorios que hay en él en forma recursiva) dentro del directorio pepe.

  • mv -vf archivo* imagenes/ basura/: mueve, sin pedir confirmación, todos los archivos del directorio actual cuyos nombres comiencen con archivo, junto con el directorio imagenes completo al directorio basura, y muestra cada operación llevada a cabo.

1.4. Eliminar

El comando rm ( ReMove) es equivalente a los comandos DOS del y deltree, pero tiene más opciones. Su sintaxis es la siguiente:

      rm  <archivo|directorio>
      

Las opciones más comunes son:

  • -r, o -R: borrar recursivamente. Esta opción es obligatoria para borrar un directorio, vacío o no. Sin embargo, puede utilizar también rmdir para borrar los directorios vacíos.

  • -f: fuerza el borrado de los archivos o directorios. Utilizar con cuidado.

Algunos ejemplos:

  • rm imagenes/*.jpg archivo1: borra todos los archivos cuyos nombres terminan en .jpg en el directorio imagenes y borra archivo1 en el directorio actual.

  • rm -Rf imagenes/misc/ archivo*: borra, sin pedir confirmación, el subdirectorio misc, del directorio imagenes, completo, junto con todos los archivos del directorio actual cuyos nombres comiencen con archivo.

[Aviso] Aviso

Al utilizar rm se borran los archivos de forma irrevocable. ¡No existe una forma sencilla para recuperarlos! Tenga mayor cuidado cuando utiliza la opción -f para omitir el pedido de confirmación para asegurarse que no borra algo por error.

1.5. Crear un directorio

mkdir ( MaKe DIRectory) es equivalente a los comandos DOS mkdir y md. Su sintaxis es la siguiente:

mkdir
       <directorio> [directorio
      ...]

Solamente vale la pena tener en cuenta la opción -p. Realiza dos acciones:

  1. crea directorios padres si no existían anteriormente. Sin esta opción mkdir fallaría, indicando que estos directorios no existen;

  2. retorna silenciosamente si el directorio que desea crear ya existe. Si no se especifica la opción -p, mkdir devuelve un mensaje de error, indicando que el directorio ya existe.

Algunos ejemplos:

  • mkdir toto: crea un directorio toto en el directorio actual;

  • mkdir -p imagenes/misc: crea el directorio misc en el directorio imagenes, creando primero este último si no existe.

1.6. Cambiar el directorio de trabajo

El directorio de trabajo actual, simbolizado por un punto ( .), es el lugar en el sistema de archivos en el que Usted está “parado”. Los dos puntos ( ..) simbolizan el directorio padre del actual, que está “un nivel más arriba”(o atrás) en la estructura del sistema de archivos.

cd ( Change Directory) le permite navegar en la estructura del sistema de archivos. Su sintaxis es la siguiente:

cd
      <directorio>

Algunos ejemplos:

  • cd /tmp/imagenes: cambia al directorio imagenes dentro del directorio /tmp;

  • cd -: cambia al directorio de trabajo corriente anterior;

  • cd: cambia a su directorio personal;

  • cd ~/imagenes: cambia al directorio imagenes dentro de su directorio personal.