shell
Download
Skip this Video
Download Presentation
Shell

Loading in 2 Seconds...

play fullscreen
1 / 29

Shell - PowerPoint PPT Presentation


  • 132 Views
  • Uploaded on

Shell. ARISO 2 Escola Tècnica Superior d’Enginyeria de Telecomunicació de Barcelona ( Universitat Politècnica de Catalunya). Licencia Creative Commons.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Shell' - laken


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
shell

Shell

ARISO 2

EscolaTècnica Superior d’Enginyeria de Telecomunicació de Barcelona

(UniversitatPolitècnica de Catalunya)

licencia creative commons
Licencia CreativeCommons

Esta obra está bajo una licencia Reconocimiento-No comercial-Compartir bajo la misma licencia 2.5 España de CreativeCommons. Para ver una copia de esta licencia, visite:

http://creativecommons.org/licenses/by-nc-sa/2.5/es/

o envíe una carta a:

CreativeCommons, 559 NathanAbbottWay, Stanford,

California 94305, USA.

licencia creative commons1
Licencia CreativeCommons

Eres libre de:

  • copiar, distribuir y comunicar públicamente la obra
  • hacer obras derivadas

Bajo las condiciones siguientes:

  • Atribución. Debes reconocer la autoría de la obra en los términos especificados por el propio autor o licenciante.
  • No comercial. No puedes utilizar esta obra para fines comerciales.
  • Licenciamiento Recíproco. Si alteras, transformas o creas una obra a partir de esta obra, solo podrás distribuir la obra resultante bajo una licencia igual a ésta.
  • Al reutilizar o distribuir la obra, tienes que dejar bien claro los términos de la licencia de esta obra.
  • Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor

Advertencia:

  • Los derechos derivados de usos legítimos u otras limitaciones reconocidas por ley no se ven
  • afectados por lo anterior.
  • Esto es un resumen legible por humanos del texto legal (la licencia completa)
shell1
Shell

Introducción

que es el shell
Que es el Shell?
  • Interprete de comandos
  • Aplicación que permite al usuario interactuar con el sistema
    • Iniciar aplicaciones
      • Borrar un fichero
      • …Matar una aplicación
  • Diferentes shells: sh, csh, ksh, zsh, bash
shell2
Shell

Ficheros

ficheros
Ficheros
  • Tira de bytes identificados por un nombre
  • Los programas interpretan la semántica
  • Tipos:
    • Ficheros de datos
      • Texto
      • Bases de datos
      • Ejecutables
    • Dispositivos E/S (discos, terminales)
    • Canales de comunicación (pipes, sockets)
    • Directorios
sistema ficheros
Sistema Ficheros
  • Organización en forma de árbol
referencias a ficheros
Referencias a Ficheros
  • El identificador del fichero (path)
    • .  directorio de trabajo
    • ..  directorio padre
    • /  directorio raíz
  • Tipo de referencias:
    • Absoluta: desde la raíz
    • Relativa: desde el directorio de trabajo
shell3
Shell

Comandos básicos

comandos
Comandos
  • man COMANDO
    • Información extensa sobre todo el sistema
      • Llamadas a sistema
      • Comandos
      • Librerías
      • Programas de usuario
  • whatis COMANDO
    • Descripción de un comando
  • aproposkeyword
    • Buscador
comandos1
Comandos
  • Directorios:
    • ls
    • mkdir
    • rmdir
    • cd
    • pwd
  • Ficheros:
    • cp
    • mv
    • rm
comandos2
Comandos
  • Filtros:
    • cat
    • more
    • head
    • tail
    • sort
    • grep
  • Otros:
    • chmod
    • echo
    • clear
    • vi, vim, joe, emacs, nedit
    • logout
shell4
Shell

Ampliación de comandos

metacar cteres
Metacarácteres
  • Herramienta del Shell para designar conjuntos de ficheros
  • Expresiones regulares
redirecci n de e s
Redirección de E/S
  • Los procesos tienen 3 canales de e/s por defecto:
    • Canal 0: Entrada estándar (teclado)
    • Canal 1: Salida estándar (pantalla)
    • Canal 2: Salida error estándar (pantalla)
  • La redirección supone cambiar estos canales por otros ficheros
    • program > file
    • program < file
    • program &> file
    • program >> file
redirecci n de e s1
Redirección de E/S
  • Redirección entre canales de procesos: PIPES
    • program1 | program2
    • canal 0 del program2 recibe canal 1 del program1

program1

program2

shell5
Shell

Shellscripts

shellscript
Shellscript
  • Lenguaje de programación que usa el shell como base
    • Permite ejecutar todos los comandos shell
    • Permite usar variables
    • Permite usar control de flujo (bucles, condicionales)
    • Paso de parámetros

#!/bin/bash

shellscript1
Shellscript
  • Variables
    • Declaración y asignación de valores:
      • var=“valor”
      • var=“$var”valor
      • var2=10
      • var2=$var2+10
  • Parámetros
    • $# Número de parámetros
    • $1 Valor del parámetro 1
    • $2 Valor del parámetro 2
shellscript2
Shellscript
  • chmodu+x script
  • test
    • test 1 –ge 2
    • test 4 –ne 6
    • Sin prints, con valor de retorno
  • expr
    • expr 3 + 4
    • expr 3 \* 4
    • Imprime
  • echo
    • ’Valor $val’ Literal
    • "Valor $val" Sustitución de variables
    • `programa $val` Ejecución y sustitución
shellscript for
Shellscript: for

forvarin lista

do

comando1

comando2

done

shellscript for1
Shellscript: for

#!/bin/bash

for variable in ord*

do

echo "Fichero $variable"

echo "Caracteres 1: `wc -c $variable`"

echo "Caracteres 2: `cat $variable | wc -c`"

echo "----------------------"

done

shellscript if
Shellscript: if

ifcondición1

then

comandos1

[elifcondición2

then

comandos2 ]

[ else

comandos3 ]

fi

shellscript if1
Shellscript: if

#!/bin/bash

for variable in ord*

do

echo "Fichero $variable"

echo "Caracteres 1: `cat $variable | wc -c`"

palabras=`cat $variable | wc -c`

if test `expr $palabras % 2` -eq 0

then

echo "PAR"

else

echo "IMPAR"

fi

echo "----------------------"

done

shellscript while
Shellscript: while

whilecondición1

do

comandos1

done

untilcondición2

do

comandos2

done

shellscript while1
Shellscript: while

#!/bin/bash

var=10

while test $var -gt 0

do

var=`expr $var - 1`

echo "$var"

done

#!/bin/bash

var=10

until test $var -eq 0

do

#var=$var-1

var=`expr $var - 1`

echo "$var"

done

shellscript case
Shellscript: case

case palabrain

patrón1) comandos1 ;;

patrón2) comandos2 ;;

...

patrónN) comandos3 ;;

esac

shellscript case1
Shellscript: case

#!/bin/bash

case $# in

0) echo "Sin argumentos: escriba algo mas"

exit

;;

1) echo "1 argumento, OK" ;;

*) echo "Demasiados argumentos: solo necesita uno"

exit

;;

esac

case $1 in

dir) ls ;;

cls) clear ;;

*) echo "Comando no reconocido" ;;

esac

ad