Publicado el 21 de Junio del 2018
1.205 visualizaciones desde el 21 de Junio del 2018
198,2 KB
11 paginas
Creado hace 11a (26/02/2013)
4party Taller Shell, comandos y programación
Comandos linux unix y
programación shell
Documento de la charla de Iñigo Tejedor & Pello Altadill http://
4party.cuatrovientos.org
Índice de contenido
1.INTRODUCCIÓN........................................................................................................3
El mapa de ficheros y directorios en linux.........................................................4 2.El
shell......................................................................................................................5
Buscar ayuda..........................................................................................................5
3.Guía de comandos...................................................................................................6
Comandos básicos y manejo de ficheros..............................................................6
Comandos de administración: usuarios, procesos, kernel.....................................9
Comunicaciones....................................................................................................10
Comunicación entre procesos..............................................................................12
Redirección de entrada/salida..............................................................................12
Compresión de ficheros y directorios...................................................................13
Accediendo a dispositivos y particiones...............................................................14
4.Usando el shell......................................................................................................16
Las flechas............................................................................................................16
El historial de comandos.......................................................................................16
Relleno de comandos y ficheros...........................................................................17
Comodines............................................................................................................18
Ejecución de comandos........................................................................................18
Comandos en segundo plano..........................................................................19
5.Programación de scripts de shell..........................................................................22
- 1
4party Taller Shell, comandos y programación
Introducción .........................................................................................................22
Variables................................................................................................................23
arrays................................................................................................................24
Otros usos.........................................................................................................24
Operaciones..........................................................................................................25
Aritméticas........................................................................................................25
Lógicas..............................................................................................................26
Condicionales........................................................................................................27
case...................................................................................................................30
Iteraciones............................................................................................................31
for......................................................................................................................31
while..................................................................................................................32
until...................................................................................................................33
select.................................................................................................................34
Funciones..............................................................................................................34
Librerías................................................................................................................35
Señales..................................................................................................................36
Colores..................................................................................................................36
6.Bibliografía, referencias y enlaces........................................................................38
- 2
4party Taller Shell, comandos y programación
1.INTRODUCCIÓN
Este guía no es para leer de forma seguida, este guía pretende ser una referencia de
comandos Unix/Linux y de programación de scripts de shell que se pueda consultar en
cualquier momento. No pretende ser una guía exhaustiva, sino una referencia que sirva
como recordatorio de los comandos más utilizados.
¿Y qué es Linux? Los sistemas operativos del tipo Linux esta formado por procesos
y ficheros. Y no hay nada más. Los dispositivos como el disco, el cdrom, la pantalla,
esta representado como un fichero en el sistema linux, dentro de /dev. Los sockets de
comunicación son ficheros. Los directorios son ficheros. Los ficheros son ficheros.
- 3
4party Taller Shell, comandos y programación
El mapa de ficheros y directorios en linux
Hay directorios que pueden cambiar segun la distribucion que sea. Las de linux se
parecen bastante, pero en general tienen lo mismo.
/ +-/bin : los binarios MAS basicos como: ls, cd, pwd, cp, rm
+-/boot : archivos de arranque, imagen de kernel. +-/cdrom : punto de montaje
del cdrom +-/etc : configuracion. Todas las configuraciones (red,scripts de
inicio,firewall,usuarios)
+-----/mail/ : configuracion de sendmail +-----/rc.d/ : ficheros con scripts de inicio de
sistema +-----/sysconfig/ : configuracion de sistema (red,rutas,interfaces) +-/dev : todos
los dispositivos de sistema (pantalla,raton,impresora,disco duro) representados por un
fichero
+-/home : directorios particulares de los usuarios +-/lib : librerias de sistema, modulos
de kernel +-/lost+found : directorio en el que se guarda contenido perdido tras un
chequeo de disco
+-/mnt : punto de montaje (opcional) para particiones locales, remotas (nfs),.. +-/proc :
sistema de ficheros que refleja el estado y configuracion del sistema +-/sbin : binarios
basicos que influyen en configuraciones (firewall, rutas,) de kernel
+-/usr : binarios de servidores, programas, manuales, documentos, etc (este ocupa el
que mas)
+-/opt : binarios opcionales o programas que no se instalan desde el principio. +-/root :
directorio home de superusuario. +-/tmp : directorio temporal, utilizado para guardar
sesiones, sockets, etc.. +-/var : directorio en el que se guarda informacion variable:
logs, BBDD (postgres, mysql)
+-----/log/ : todos los logs de sistema y servidores +-----/lib/pgsql/ : postgres +-----/lib/
mysql/ : mysql +-----/spool/mqueue/ : cola de correo del servidor (entregas sendmail) +--
---/spool/mail/ : buzones de correo
El mapa de ficheros y directorios en linux - El mapa de ficheros y directorios en linux 4
4party Taller Shell, comandos y programación
2.El shell
Al entrar en un Linux en modo consola estamos usando un shell o interprete de
comandos. Un shell no es más que un programa que le facilita al usuario interactuar
con el sistema operativo: administrar el sistema, programar, crear todo tipo de
contenidos de texto, etc... para hacer todo eso el usuario debe utilizar una serie de
comandos que le permiten manipular ficheros, procesos, etc...
En los sistemas Windows el shell es un entorno visual intuitivo y fácil de utilizar, aunque
también tiene otro shell disponible, una herencia del sistema MS-DOS que no ha
evolucionado mucho. En Linux disponemos de multitud de entornos visuales para
elegir, pero la gran diferencia respecto a Windows es que en Linux el entorno gráfico
no es más que un programa más; es algo opcional que podemos lanzar desde un shell
o intérprete de comandos. La otra diferencia importante es que el shell de linux es una
herramienta muy poderosa.
Existen distintos interpretes de comandos en el mundo Unix: csh, bash, tsh, ksh,..
pero salvo pequeñas diferencias todos son parecidos. En este documento partimos
sobretodo de bash2, ya que esta muy extendido a través de Linux.
Buscar ayuda
Todos los comandos tienen ayuda sobre sus opciones y más de una forma de llegar a
esa ayuda:
man comando : a través de man accedemos a la página de manual de cualquier
programa. El manual de comandos nos da TODA la información de un comando e
incluso al final nos sugiere otros comandos similares o relacionados. Es la forma
clásica de acceder a la ayuda extendida aunque para los usos más frecuentes de
comandos siempre se puede usar opciones más simples que pueden variar de un
comando a otro: comando -h comando –help comando -? info comand
El mapa de ficheros y directorios en linux - Buscar ayuda 5
4party Taller Shell, comandos y programación
3.Guía de comandos
Comandos básicos y manejo de ficheros
cd Descripción: =chage dir. comando para cambiarnos de directorio. Ejemplos: cd, cd /
ruta/de/directorio, cd ../../directorio/
pwd Descripción: nos dice en qué directorio nos encontramos actualmente Ejemplos:
pwd
ls Descripción: =list. listar contenido de directorios. Ejemplos: ls, ls -l, ls -fl, ls --color
cp Descripción: =copy. copiar ficheros/directorios. Ejemplos:cp -rfp directorio /tmp, cp
archivo archivo_nuevo
rm Descripción: =remove. borrar ficheros/directorios. Ejemplos: rm -f fichero, rm -rf
directorio, rm -i fichero
mkdir Descripción: =make dir. crear directorios. Ejemplos: mkdir directo
Comentarios de: Comandos Linux Unix y programación shell (0)
No hay comentarios