Command line – Linea de comandos

Moviéndose a través del Sistema

 

 

En el Sistema Operativo podemos encontrar rutas absolutas, (si inician desde el directorio Raíz “/”), o relativas, (si inician desde el directorio actual).

Ejemplos:

Suponiendo que estamos situados en el directorio /home/user:

Absoluta: /home/user/Escritorio/archivo

Relativa: /Escritorio/archivo

En cualquier Sistema Operativo estructurado hay ciertas utilidades que nos permiten navegar a través del sistema. Veamos cuales son y cómo utilizarlas.

Comandos del Sistema Operativo:

ls (List): Es uno de los comandos más utilizados del sistema ya que se utiliza para listar el contenidos de los directorios.

Sintaxis: la [opción] [directorio o archivos]

Algunos de las opciones más utilizadas son:

Nombre Acción
-a Lista los archivos ocultos. Comienzan siempre con . (punto)
-l Lista los permisos de los archivos, nombre del propietario, del grupo, el tamaño en bytes, fecha de modificación y si es un link.
-F Coloca al lado de cara archivo un * si es un archivo ejecutable o una / si es un directorio.

Crear un archivo (touch): touch [options] <archivo>

Consultar los manuales de los comandos del sistema (man): En el caso de no saber las opciones que tiene un comando, podemos consultar los manuales del mismo en el propio Sistema Operativo.

Sintaxis: man <comando>

Copiar Archivos (cp copy”): Este comando tiene dos utilidades. Puede copiar un archivo a un directorio o bien copiar el contenido de un archivo a otro archivo, destruyendo el contenido de este último y colocando la información del archivo copiado. Para que se entienda mejor, si tenemos un “archivo1” y lo copiamos a un “archivo2”, el contenido de “archivo2” es destruido y reemplazado por el contenido de “archivo1”

Sintaxis: cp [opciones] [directorio o archivo origen] [directorio o archivo destino]

Algunos de las opciones más utilizadas:

Nombre Acción
-d No respetar la ubicación del Link simbólico
-f Ejecuta la acción sin pedir confirmación
-p Mantiene los atributos del archivo
-R Copia recursivamente
-l Interactivo, pregunta antes de sobrescribir

Renombrar y mover ficheros (mvmove”): Este comando sirve para mover los archivos o directorios de lugar o cambiarles el nombre.

Sintaxis: mv [opciones] [archivo origen] [archivo destino]

Algunas de las opciones más utilizadas:

Nombre Acción
-f No le pregunta al usuario antes de efectuar la acción
-i Le pregunta al usuario antes de efectuar algún cambio.

Eliminación de Ficheros (rmremove”): Este comando sirve para eliminar archivos.

Sintaxis: rm [opciones] [archivos]

Algunas de las opciones más comunes:

Nombre Acción
-f Borra el archivo sin pedir confirmación
-i Borra el archivo pero pide confirmación
-r Borra los archivos recursivamente

Eliminar directorios (remove directory “rmdir”): Este comando sirve para eliminar los directorios, pero solo si los mismos se encuentran vacíos. En el caso que alguno se encuentre con contenido, se deberá usar “rm -rf”.

Sintaxis: rmdir [directorio]

Crear directorios (make directory “mkdir”): Con este comando podremos crear el directorio que queramos.

Sintaxis: mkdir [directorio]

El sistema nos da una serie de herramientas para poder buscar los archivos que necesitamos, veamos a continuación los ejemplos.

find: Cuando necesitamos buscar un archivo o directorio, utilizamos este comando, permite utilizar varios criterios, seleccionando el directorio de búsqueda.

Sintaxis: find <directorio> <archivo o directorio a buscar> [opciones]

Ejemplo: find / -type f –user 502-exec rm –rf {} \;

Opciones más communes:

Nombre Acción
-type Especifica el tipo de archivo
-name Especifica el nombre del archivo a buscar
-print Imprime los archivos que encuentra
-perm modo Los permisos de los archivos son los indicados por modo
-atime n Archivo accedido en las últimas n*24 horas
-ctime Archivos cambiados en las últimas n*24 horas
-amin n Archivos accedidos en los últimos n minutos
-cmin n Archivos cambiados los últimos n minutos
-empty Archivos vacíos
-mmin n Archivos modificados en los últimos n minutos
-mtime n Archivos modificados en las últimas n*24 horas
-size n [bloque] Archivos que tiene al menos n bloques/caracteres/kilobytes
-exec comando \; Por cada archivo que encuentra ejecuta comando

Cómo saber quien está en el sistema: who [opciones]

Tenemos además una serie de herramientas que nos permiten leer la información contenida en un archivo y son las siguientes:

cat <archivo>: Muestra en pantalla el contenido del archivo indicado, si se indica más de un archivo, en pantalla se muestra la concatenación de los archivos indicados. Si el archivo supera la cantidad de líneas de pantalla, recorrerá automáticamente todo el contenido hasta el final. Para ver el contenido por página se utiliza el comando more.

more <archivo>: Vuelca el contenido de uno o más archivos, adecuando su presentación al número de líneas de la terminal. Permite ver desde el comienzo e ir bajando a mano hasta el final, pero si queremos volver al comienzo del archivo no nos deja. Para poder hacer esto debemos recurrir al comando less.

less <archivo>: Aquí podemos recorrer el contenido del archivo de principio a fin.

Donde estamos parados? Para esto existe el comando pwd (Print Work Directory).

Sintaxis: pwd

Buscar el PATH de un comando (which): Devuelve el path completo del comando mencionado, escaneando los directorios definidos en la variable PATH.

Sintaxis: which <comando>

whereis: localiza los binarios y manuales del comando marcado

Sintaxis: whereis <comando>

Opciones más comunes:

Nombre Acción
-l Muestra el i-nodo
-h Muestra tamaño legible
-n Lista los UIDs y GUDs
-R Muestra recursivamente el contenido del directorio
-S Ordena por Sistema de Archivos
-t Ordena por tiempo de modificación
-u Muestra el tiempo del último acceso.

Comando dd (duplícate disk): Este comando copia un archivo con un tamaño de bloque variable.

Sintaxis: dd if(input file)=origen  of(output file)=destino

Ejemplo:

Haciendo una imagen iso de un cd:

# dd if=/dev/cdrom of=/home/usuario/miiso.iso

O también sirve para clonar particiones del disco duro o nuestro disco rígido completo.

# dd if=/dev/hdxa of=/dev/hdyb (cloner partición)
# dd if=/dev/hdx of=/dev/hdy (cloner disco completo)

Por último tenemos links los cuales se dividen en duro y simbólico, los cuales vamos a ver a continuación.

Link Simbólico (Soft-link): Apuntan a un archivo por su nombre, esto permite que los enlaces apunten a archivos localizados en otras particiones o unidades de red. Esto lo hace creando un nuevo i-nodo que apunta a la misma área de datos.

Sintaxis: ln –s <archivo> <nombre del link>

Ejemplo: ln –s lilo.conf  lilo

Link Duro (Hard-link): Un enlace duro es un nombre adicional para el mismo i-nodo y como tal el número de referencia aumenta en uno por cada enlace duro.

Sintaxis: ln <archivo> <archivo.link>

Ejemplo: ln lilo.conf lilo.link

Con eso terminamos los comandos más utilizados para movernos por el Sistema Operativo, lo próximo será indagar un poco en el manejo de procesos.

Por si quieren descargar la versión en pdf, la dejo en el siguiente link:

Un saludo!

 

Author: Nicolas Ventre

Virtualization architect with more than 15 years implementing complex environments. Security Specialist and Linux instructor