Comandos básicos en Linux

Os dejo aquí un par de listados de los comandos básicos en Linux, con su correspondiente explicación (breve) y sus opciones de ejecución, algo necesario si comenzáis a trabajar con la shell del sistema. Si este es el caso, debéis saber (por simple comodidad) un par de trucos de teclado cuando trabajáis con el interprete de comandos.

  1. Si pulsáis las flechas del teclado “arriba” y “abajo”, la shell os irá mostrando el historial de comandos que habéis ido usando
  2. Escribiendo en el interprete el comando cat .bash_history accederéis a todo el historial de ordenes que habéis introducido.
  3. La shell es capaz de autocompletar las ordenes que estáis introduciendo, esto se hace pulsando el tabulador del teclado, si por ejemplo estamos situados en nuestro directorio home y escribo:

cd Doc (y entonces pulso el tabulador) la shell completará la linea con algo como esto:

cd Documentos/

También podría haber escrito cd D y entonces pulsar el tabulador, pero comprobaríamos que no ocurre nada. Esto es porque existe más de un directorio que comienza por “D”, si pulsamos una segunda vez el tabulador la shell nos mostrará cuales son nuestras opciones. Este comportamiento es ligeramente distinto según el interprete de comando (y la versión de este) que estemos usando, aunque se puede configurar a través del comando shopt (shell options)

Para los comandos referenciados más abajo incluyo algunas de sus opciones (no todas), un buen ejercicio de aprendizaje es ir comprobando cómo funcionan todas sus opciones.

El comando más basico de todos, para mi, es el “ls”, este nos permite ver los contenidos de los directorios, es el equivalente en Linux del comando Dir para la consola de windows (el antiguo MS-Dos, ahora también llamado PowerShell)

Comando: ls

Opciones básicas (para conocer más escribir ls –help o man ls)

-l

Muestra los archivos en modo columna

-a

Muestra todos los archivos, incluidos los ocultos (aquellos que empiezan con un punto, como por ejemplo el anteriormente visto .bash_history

-R

Efectua un listado recursivo de todos los archivos y directorios, es decir, comienza a mostrar cada directorio y lo que contiene.

-i

Muestra el numero de inodo. Los inodos almacenan metadatos de cada archivo y directorio, tales como, propietario, nombre de archivo, permisos, fecha de creacion, etc. Se puede deducir que cada archivo y directorio tiene asociado un numero de inodo. El inodo es un elemento fundamental de los sistemas de archivos en Unix/Linux. Muchos de estos sistemas, crean todos los inodos cuando el sistema es creado (como en el caso de Ext3), en estos casos, existe un numero limite de archivos y directorios (definido en la creación del sistema de archivos) que el sistema de archivos puede almacenar

-h

Muestra el espacio ocupado, del archivo en Mb, Kbyte, etc… si utilizamos -H en vez de -h, el sistema nos mostrará la misma información pero basada en potencias de 1000 y no de 1024

-t

Ordena el listado por fecha y hora de modificación.

-h

–help

Ayuda del comando

Comando: cd

Cambia entre de un directorio a otro : cd

Vuelve a un directorio anterior (un nivel arriba): cd ..

Va al directorio home del usuario activo: cd ~ (este símbolo en un teclado en español puedes sacarlo usando la combinación de teclas Alt Gr + ñ

Comando : info

El comando info nos permite navegar por las paginas man a través de enlaces, como si fuese una web

Opciones :

–aprops

-k

Busca una cadena determinada en todos los índices de todos lo manuales

-d

–directory=DIR

Agrega un directorio (DIR).

-f

–file=ARCHIVO

Se especifica un archivo determinado.

-M RUTA
–manpath=RUTA

Se especifica una o mas rutas (separadas por dos puntos) para la ubicación de los manuales.

-h

–help

Ayuda del comando

Comando : whatis

Este comando nos entrega una pequeña descripción de un comando y las secciones de man que podemos consultar.

Opciones :

–debug

-d

Imprime información de depuración

–regex

-r

Este es en realidad el comportamiento predeterminado, cada palabra clave se interpreta como una expresión regular.

-w

–wildcard

Cada palabra clave se compara con los nombres de las páginas y las descripciones

-M RUTA

manpath=RUTA

Especifica una o más rutas (separándolas por dos puntos) para la ubicación de los manuales.

Comando : man

Muestra los manuales de los programas y archivos de configuración.

La siguiente tabla muestra los números de sección del manual y los tipos de páginas que

contienen.

1

Programas ejecutables y guiones del intérprete de órdenes.

2

Llamadas del sistema (funciones servidas por el núcleo).

3

Llamadas de la biblioteca (funciones contenidas en las bibliotecas del sistema).

4

Ficheros especiales (se encuentran generalmente en /dev).

5

Formato de ficheros y convenios p.ej. /etc/passwd

6

Juegos

7

Paquetes de macros y convenios p.ej. man man(7), groff groff(7).

8

Órdenes de administración del sistema (generalmente solo son para root).

9

Rutinas del núcleo [No es estándar].

Opciones :

-d

–debug

Imprime información de depuración

-t ls

Formatea la página del manual ls en postcript. Suele redireccionarse con un pipe | hacia un programa de conversión.

-k ls

Igual que apropos

-f ls

Busca las páginas del manual referenciadas por ls e imprime la descripción de las que encuentra. Equivalente al comando whatis.

Ejemplos :

# man ls

# man -k ls

# man -t ls | ps2pdf – > ls.pdf

El archivo /etc/manpath.config contiene los directorios donde se busca la información de los archivos man.

Comando touch

Este comando crea un archivo vacío o bien, cambia la fecha y hora de un archivo ya creado.

Opciones :

-a

Cambia sólo el tiempo de acceso

-d
–date=string

Cambia la fecha entregandole esta como una cadena string

-m

Cambia sólo la hora

Comando: cp

El comando cp copa un archivo o directorio.

Opciones :

-a

Lo mismo que -dR –preserve=all (mantiene los enlaces y trabaja en modo recursivo)

–attributes-only

No copia los datos del fichero, solamente los atributos

-i

Modo interactivo, pregunta por cada archivo que se copia.

-p

Conserva si puede los atributos (por omisión: mode,ownership,timestamps)

–preserve=[Lista de atributos]

Conserva si puede los atributos especificados, (por omisión: mode,ownership,timestamps) .
Atributos adicionales: context, links, xattr, all

–no-preserve=[Lista de atributos]

Copia pero no mantiene los atributos especificados

-v

Modo verbose, muestra lo que se está copiando.

-R

-r

Modo recursivo.

-u

–update

Copia sólo si el fichero ORIGEN es más reciente que el fichero destino, o bien, cuando falta el fichero destiono

Comandos para mostrar contenidos de archivos: more, less y cat

Los comandos more y less nos muestran el contenido del archivo indicado y solo podemos recorerlo bajando una línea por vez (con la tecla enter) o avanzar por página (con la tecla space).

El comando less (normalmente) tenemos que instalarlo, podemos utilizar para ello el comando apt-get install less.
El comando less nos permite realizar búsquedas dentro del archivo. También podemos usar las teclas (pgdown) y (pgup) para desplazarnos por las paginas siguientes y anteriores

Ejemplos :

# more /etc/passwd

# less /etc/passwd

El comando cat también nos permite ver el contenido de un archivo, pero a diferencia de more y less, no nos permite recorrer ese contenido.

Redirecciones (fontanería): >, >>, <

A través de las redirecciones podemos tomar la salida de un programa y enviarla automáticamente a un archivo. Este proceso es manejado directamente por la propia shell en un lugar del programa.

(Puedes consultar el articulo al respecto en este mismo blog)

Pipes: |

Los pipes son un mecanismo que permite que la salida de un programa se redireccione a la entrada de otros programas. La diferencia con las redirecciones es que estás solo pueden redireccionar las salidas a un archivo. Con los pipes podemos lograr que diferentes programas trabajen en cadena proporcionándonos herramientas muy potentes.

(Puedes consultar el articulo al respecto en este mismo blog)

Concatenación de comandos

Se puede hacer que el sistema ejecute comandos concatenadamente (sin tener que esperar a que termine uno para teclear el siguiente). Para ello escribimos los comandos separándolos con uno de estos dos símbolos: Punto y coma (;) o doble ampersand &&. La diferencia entre utilizar uno y otro símbolo para separar comandos radica en como responderá la shell ante un posible error.

Ejemplos :

# cd /etc ; ls -l

Al utilizar (;) si da error el primer comando sigue con el proximo comando.

# cd /e ; ls -l

Al utilizar (&&) si da error el primer comando no sigue con el próximo comando.

# cd /etc && ls -l

# cd /e && ls -l archivo

Comando: rm

El comando rm borra tanto archivos como directorios completos.

Opciones :

-i

Modo interacivo, pregunta antes de borrrar cada archivo y/o directorio.

-f

Modo forzado, borra sin importar si contieno o no archivos

-r

-R

Modo recursivo, borra tanto directorios como subdirectorios

-v

Modo verbose, muestra todo lo que va haciendo.

Comando: mv

Permite mover o renombrar tanto archivos como directorios.

-i

Modo interactivo

-f

Modo forzado, mueve un directorio aunque no contenga archivos

–backup

Crea un backup del archivo antes de ser movido. Conviene consultar con el –help las opciones del modo –backup

-v

Modo verbose

-u

–update

Mueve solo cuando el archivo origen es más reciente que el de destino.

Comando: mkdir

Este comando nos sirve para crear directorios.

Creación de un directorio: mkdir

Con este comando nos permite crear directorio/subdirectorio.

Opciones :

-p

Crea tanto el directorio padre como el subdiretorio indicado, por ejemplo, si escribo mkdir /MisCosas/MisImagenes el comando creara tanto el directorio MisCosas, como el subdiretorio MisImagenes

-m

-mode=MODE

Crea un directorio con ciertos permisos especificados en el parámetro MODE

Comando: rmdir

Este comando borra un directorio. Sólo tiene una opción -p que borra también el directorio padre.

Comando: clear
Este comando nos limpia la pantalla del terminal

Comando: logout

salimos de la sesion de usuario

Comando: su
Este comando cambia el usuario que estamos usando. Por ejemplo con su root cambiaríamos nuestra sesión de consola como si fuésemos root (obviamente nos pedirá antes la contraseña)

Comando: sudo

Este comando ejecuta un comando como su fuésemos otro usuario, si no se le especifica el usuario que vamos a usar para ejecutar el comando, interpreta que queremos ejecutar como root y nos pedirá la contraseña.

 Siguiente Artículo: Tipos de Archivos en Linux
About these ads

Un pensamiento en “Comandos básicos en Linux

  1. Pingback: Latino » Blog Archive » Programando desde la shell. Shell-Scripting I (introducción)

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s