Clase Shell

download Clase Shell

If you can't read please download the document

description

shell bash

Transcript of Clase Shell

Tipos diferentes de shell desarrollados

ShellEs un intrprete de comandos cuyainterfaz se orienta al trabajo en lnea,interactiva y no interactiva, entreusuario y sistema operativo.

para Linux

Bourne shell usa una sintaxis de comandos como la usadaen los primeros sistemas UNIX. El nombre del interpreteBourne en la mayora de los UNIX es /bin/sh.

El intrprete C shell usa una sintaxis diferente, a vecesparecida a la del lenguaje de programacin C, y en lamayora de los sistemas UNIX se encuentra como /bin/csh.

Bajo Linux hay algunas diferencias en los intrpretes de

Shell interactiva

comandos disponibles. Dos de los ms usados son el"Bourne Again Shell" o "Bash" y Tcsh.

Bash es un equivalente al Bourne con muchas

Trabajamos interactivamente,

caractersticas avanzadas de la C shell. Como Bash es

escribiendo comandos,

un super-conjunto de la sintaxis del Bourne, cualquier

ejecutndolos y recibiendo una

standard funcionar en Bash.

respuesta a los mismos.

Para los que prefieren el uso del interprete de comandos

guin escrito para el interprete de comandos Bourne

C, Linux tiene el Tcsh (Tenex C Shell), que es unaversin extendida del C original.

Shell no interactivaSe ejecuta de forma no interactiva cuando ejecutamoscomandos ledos desde un archivo.

La shell permite crear programas para que lleven a cabo unatarea especfica.

Estos programas constan de una secuencia de comandos,usos de variables y estructuras de control.

Generalmente las instrucciones para crear un programa deshell se insertan en un archivo de texto plano para luegoejecutarse.

Tambin Korn shell (ksh) es un poderoso lenguaje deprogramacin de alto nivel lo que lo hace especialmenteadecuado para la creacin de script.

O Z shell (zsh), que tambin es un lenguaje de scripting degran alcance. Se le han incorporado muchas de lascaractersticas principales de otras shells de Unix como tcshy adems posee caractersticas propias originales como serel uso de combinaciones de teclas para referirse a eventosdel historial.

El tipo de intrprete de comandos

que decida usar es

puramente una cuestin de gustos.

En lo que respecta a los

comandos usuales es

Bash incorpora caractersticas

mejoras funcionales tanto para uso interactivo yprogramacin.

indiferente el tipo de intrprete de comandos usado, lasintaxis es la misma.

Solo, cuando se escriben scripts para el intrprete de

Mientras

que el sistema operativo GNU

proporciona otros interpretes, bash es el shell por

comandos, o se usan caractersticas avanzadas

defecto.

aparecen las diferencias entre los diferentes intrpretesde comandos.

tiles desde el

shell Korn (ksh) y el shell C (csh) y ofrece otras

Al igual

que otros programas GNU, Bash esporttil.

BASHLa shell bash ofrece caractersticas orientadasSHELL

URL

gnu.org/software/bash

BASH

Zsh.org

ZSH

Tcsh.org

TCSH

Kornshell.com

KORN

especficamente para uso interactivo que incluyenel control de trabajos, la edicin de lnea decomandos y la historia de comandos.

Tambin pude usarse como lenguajes deprogramacin para la creacin de scripts ascomo las realizacin de tareas especficas sobreel sistema operativo.

Historial de ComandosEl archivo .bash_history es un archivo de historialcon todos los comandos utilizados por el usuarioy se encuentra en el directorio home de dicho

Bourne again shell (bash)

usuario.

Es el intrprete de comandos por defecto en lamayora de las distribuciones de GNU con Linux.

ste archivo aloja una cantidad de comandosdefinida previamente.

Se accede al historial por medio de las teclasFLECHA ARRIBA y FLECHA ABAJO.

En bash se utiliza el carcter

Completado de Linea

privilegios y

$ para los usuarios sin

# para el administrador.

Se puede hacer que el shell complete lalnea de comandos cuando seintroduzcan las primeras letras y sepresione la tecla TAB.Ejemplo:cd /ho (presionamos TAB)y el shell nos devolver /home/

En sistemas Unix/Linux, el prompt tiene el aspecto de:

usuario@mquina:~$root@mquina:~#

En el primer ejemplo, "usuario" es el nombre de usuario,seguido de @ y el nombre del ordenador "mquina", elsmbolo tilde ~ que es el directorio actual y el smbolo dlar $.En segundo ejemplo, el usuario es el root, lo que tambin senota por mostrarse almohadilla # en vez del smbolo $.

Lnea de comandosEspacio donde se pueden escribir rdenes (sealizado con un prompt).El usuario teclea una orden y la ejecuta al pasar a la lnea siguiente,utilizando la tecla Entrar.

Por ejemplo:

PROMPT>comando [parametros] ...

Al finalizar y enviar la orden con la tecla Entrar, la shell analiza lasecuencia de caracteres recibida y, si la sintaxis de la orden es correcta,

jou@home-comp:/media/disk$

ejecuta la orden dentro del contexto del programa o del sistemaoperativo donde se encuentra.Esta forma de trabajo es secuencial, y equivale a un tipo deprogramacin paso a paso.

Prompt

Carcter o conjunto de caracteres quese muestran en una lnea de comandospara indicar que est a la espera derdenes.

ste puede variar dependiendo del intrprete decomandos.

Comandos simplesUn comando simple es slo unasecuencia de palabras.

La primera palabra generalmenteespecifica un comando a ejecutar, conel resto de las palabras que sonargumentos de ese comando.

Cmo se escriben los comandos?La sintaxis para escribir un comando en elprompt de bash es:

comando [parmetro1] [ parametro2] ...

Comando cdPermite cambiar de directorio.

Por ejemplo:

cd /home/Pedro

Aqu pasamos del directorio actual de trabajo al nuevodirectorio /home/Pedro, que ser desde ahora nuestronuevo directorio.

Otra forma de utilizar el comando cd es:

Comando pwdcd ..Nos muestra la ruta del directorio en el que nosencontramos en este momento.Retrocedemos un nivel en la jerarqua dedirectorios.

Si queremos saber qu shell estamosusando:

echo $SHELL

Para referirnos a la localizacin de un archivo odirectorio se podrn usar dos caminos.

Camino absoluto: ubicacin de un archivo o directoriodesde el directorio raz del sistema de archivos.

Para conocer la versin:

echo $BASH_VERSION

Camino relativo: ubicacin de un archivo o directorio apartir de la posicin actual en la que nos encontramos.

Ejemplo:

Ubicacin actual/home/Pedro

El comando ls admite los caracteres desustitucin

*

y

?.

Deseo llegar al directorio ejercicios que se encuentra en elEscritorio. Puedo utilizar un camino absoluto:$ cd /home/Pedro/Escritorio/Ejercicios

El carcter * representa cualquier conjunto osecuencia de caracteres.

El carcter ? representa cualquier carcter, peroO utilizar un camino relativo a la ubicacin actual:$ cd Escritorio/Ejercicios

Comando ls

Muestra los nombres de los ficheros ysubdirectorios contenidos en el directorio en elque estamos ordenados alfabticamente.

Opciones ms comunes:ls -a

Muestra todos los dicheros ysubdirectorios incluso los que estnocultos (son los que comienzan con unpunto)

ls -l

Lista larga. Muestra toda la informacinincluyendo tamao, fecha de creacin,permisos, otros.

ls -c

Muestra ordenando por da y hora decreacin.

ls -t

Muestra ordenando por da y hora demodificacin.

ls -r

Muestra el directorio y lo ordena en ordeninverso.

ls subdir

Muestra el contenido del subdirectoriosubdir.

slo uno.