SlideShare una empresa de Scribd logo
1 de 14
Scripts de Linux
• Script = Guión = Proceso por Lotes
• Tareas repetitivas se pueden agrupar en un guión y
ejecutarse automáticamente (Batch Processing).
• Usaremos un editor de texto plano (por ejemplo gedit).
• Con #! en la primera línea indicamos qué shell debería
interpretar el resto de comandos (/bin/bash).
• Posteriormente escribimos los comandos separados
por saltos de línea.
• Antes de ejecutar el script tendremos que darle al
archivo permiso de ejecución: chmod +x fichero_script
• Para ejecutar el script teclearemos el nombre del
fichero anteponiéndole los caracteres ./
Introducción a los Scripts
- Usamos un editor (por ejemplo gedit) y creamos el fichero
hola.sh:
#!/bin/bash
clear
echo “hola”
- Con #! en la primera línea indicamos qué shell interpretará
el resto de comandos (/bin/bash).
- Posteriormente escribimos los comandos separados por
saltos de línea.
- Le damos permisos de ejecución: chmod +x hola.sh
- Lo ejecutamos: ./hola.sh
Nuestro primer shell script
– Una variable tiene un nombre y un valor, y sirve para dotar de
dinamismo y más potencia a nuestros scripts:
FECHA=”15/07/2004”
echo “Hoy es $FECHA”
– FECHA es el nombre de la variable.
– $FECHA es su valor.
– Para asignar un valor, se utiliza “=”. ¡¡¡SIN ESPACIOS!!
Variables
Existen una serie de variables predefinidas:
Las variables de entorno.Las variables de entorno.
(pueden verse con el comando env)
– Es posible leer del usuario el valor de una variable,
dotando a nuestros scripts de interactividad.
– cat hola.sh
#!/bin/bash
echo “Dime tu nombre:”
read NOMBRE
echo “Hola $NOMBRE, encantado de conocerte”
Variables: interactividad
– Para ejecutarlo tecleamos: ./hola.sh
– Es posible pasar los parámetros o argumentos que
queramos y utilizarlos dentro del script.
– cat nombre.sh
#!/bin/bash
echo “Nombre: $1”
echo “Primer Apellido: $2”
echo “Segundo Apellido: $3”
– ./nombre.sh Juan López Martínez
– ./nombre.sh “Maria Dolores” Pradera Sánchez
– $1, $2, $3... ${10}, ${11},… : argumentos
– $0 es el propio script.
– $#: número de argumentos que nos han pasado.
– $*: todos los argumentos. “$*” = “$1 $2 $3...”
Variables: parámetros o argumentos
Operaciones aritméticas
expr: Permite realizar operaciones aritméticas.
- Sintaxis: expr ARG1 OP ARG2
SUMA=`expr 7 + 5` (ojoespacios!)
echo $SUMA
- A algunos operadores hay que anteponerles una 
P=`expr 7 * 5` (ojo escapar operadores!)
P=`expr ( 7 + 5 ) * 2`
● test “$NOMBRE”==“Juan” (==, !=, >, <, >=, <=)
● test $DINERO –eq 1000 (-eq, -ne, -gt, -lt, -ge, -le)
● test -f /etc/passwd (-f, -d, -l, -r, -w, -x)
● cero = verdadero
● no cero = falso (¡¡AL REVÉS QUE EN C!!)
Condiciones: test
Control del flujo de ejecución
• Alternativa simple: if
• Alternativa múltiple: case
• Bucles repetitivos: while, until, for
Sintaxis:
If condición
then
comandos
else
comandos
fi
Alternativa simple: if
Ejemplo:
If test “$NOMBRE”==“Juan”
then
echo “Hola Juan, ¿qué tal?”
else
echo “No te conozco”
fi
Sintaxis:
case $VARIABLE in
“VALOR1”)
comandos
;;
“VALOR2”)
comandos
;;
*)
comandos
;;
esac
Alternativa múltiple: case
Ejemplo:
case $NOMBRE in
“Juan”)
echo “Hola Juan”
;;
“Pedro”)
echo “Pedreteee!!!!”
;;
*)
echo “no te conozco”
;;
esac
Sintaxis:
while condición
do
comandos
done
Bucle repetitivo while (mientras)
Ejemplo:
N=1
while [ $N –lt 100 ]
do
echo “Vuelta número $N”
N=`expr $N + 1`
sleep 1 # Esperamos 1 segundo
done
Sintaxis:
until condición
do
comandos
done
Bucle repetitivo until (hasta)
Ejemplo:
N=1
until [ $N –ge 100 ]
do
echo “Vuelta número $N”
N=`expr $N + 1`
sleep 1 # Esperamos 1 segundo
done
Sintaxis:
for VARIABLE in LISTA
do
comandos
done
Bucle repetitivo for (para)
Ejemplo 1:
for N in “sopa” “carne” “pan de ajo”
do
echo “Hoy comemos $N”
done
Produce una ejecución repetitiva asignando a una variable
de control valores de una lista.
En la LISTA se define la separación de cada elemento por el
valor de la variable de entorno IFS, que por defecto toma
espacios en blanco, tabuladores y saltos de línea.
Ejemplo 2:
IFS=“:”
echo “Directorios en el path…”
for N in $PATH
do
echo $N
done

Más contenido relacionado

La actualidad más candente

Bash Shell Scripting
Bash Shell ScriptingBash Shell Scripting
Bash Shell ScriptingRaghu nath
 
Unix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell ScriptUnix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell Scriptsbmguys
 
Bash Shell Scripting
Bash Shell ScriptingBash Shell Scripting
Bash Shell ScriptingRaghu nath
 
Instalar y configurar Servidor DNS en linux
Instalar y configurar Servidor DNS en linuxInstalar y configurar Servidor DNS en linux
Instalar y configurar Servidor DNS en linuxHamza Beddouka
 
ssh.ppt
ssh.pptssh.ppt
ssh.pptjoekr1
 
Complete Guide for Linux shell programming
Complete Guide for Linux shell programmingComplete Guide for Linux shell programming
Complete Guide for Linux shell programmingsudhir singh yadav
 
Shell Scripting in Linux
Shell Scripting in LinuxShell Scripting in Linux
Shell Scripting in LinuxAnu Chaudhry
 
Presentación Sistema OPerativo Linux
Presentación Sistema OPerativo  Linux Presentación Sistema OPerativo  Linux
Presentación Sistema OPerativo Linux Dhariana Leguisamo
 
Batch programming and Viruses
Batch programming and VirusesBatch programming and Viruses
Batch programming and VirusesAkshay Saini
 
Introduction to the linux command line.pdf
Introduction to the linux command line.pdfIntroduction to the linux command line.pdf
Introduction to the linux command line.pdfCesleySCruz
 
Unidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxUnidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxjcfarit
 
Unix Shell Scripting
Unix Shell ScriptingUnix Shell Scripting
Unix Shell ScriptingMustafa Qasim
 
Basic command ppt
Basic command pptBasic command ppt
Basic command pptRohit Kumar
 

La actualidad más candente (20)

Bash Shell Scripting
Bash Shell ScriptingBash Shell Scripting
Bash Shell Scripting
 
Linux systems - Linux Commands and Shell Scripting
Linux systems - Linux Commands and Shell ScriptingLinux systems - Linux Commands and Shell Scripting
Linux systems - Linux Commands and Shell Scripting
 
Shell scripting
Shell scriptingShell scripting
Shell scripting
 
Unix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell ScriptUnix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell Script
 
Bash Shell Scripting
Bash Shell ScriptingBash Shell Scripting
Bash Shell Scripting
 
Grep
GrepGrep
Grep
 
Instalar y configurar Servidor DNS en linux
Instalar y configurar Servidor DNS en linuxInstalar y configurar Servidor DNS en linux
Instalar y configurar Servidor DNS en linux
 
ssh.ppt
ssh.pptssh.ppt
ssh.ppt
 
Apache ppt
Apache pptApache ppt
Apache ppt
 
Complete Guide for Linux shell programming
Complete Guide for Linux shell programmingComplete Guide for Linux shell programming
Complete Guide for Linux shell programming
 
Shell Scripting in Linux
Shell Scripting in LinuxShell Scripting in Linux
Shell Scripting in Linux
 
Presentación Sistema OPerativo Linux
Presentación Sistema OPerativo  Linux Presentación Sistema OPerativo  Linux
Presentación Sistema OPerativo Linux
 
Linux
Linux Linux
Linux
 
Batch programming and Viruses
Batch programming and VirusesBatch programming and Viruses
Batch programming and Viruses
 
Introduction to the linux command line.pdf
Introduction to the linux command line.pdfIntroduction to the linux command line.pdf
Introduction to the linux command line.pdf
 
Unidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linuxUnidad 3 gestion de procesos en linux
Unidad 3 gestion de procesos en linux
 
Unix Shell Scripting
Unix Shell ScriptingUnix Shell Scripting
Unix Shell Scripting
 
Ssh
SshSsh
Ssh
 
Introducción a PHP
Introducción a PHPIntroducción a PHP
Introducción a PHP
 
Basic command ppt
Basic command pptBasic command ppt
Basic command ppt
 

Destacado

Introducción a shell script
Introducción a shell scriptIntroducción a shell script
Introducción a shell scriptPablo Macon
 
Proyecto 2016 - ITS - SISTEMAS OPERATIVOS II
Proyecto 2016 - ITS - SISTEMAS OPERATIVOS IIProyecto 2016 - ITS - SISTEMAS OPERATIVOS II
Proyecto 2016 - ITS - SISTEMAS OPERATIVOS IIPablo Macon
 
Ejercicios resuelto de shell script
Ejercicios resuelto  de shell scriptEjercicios resuelto  de shell script
Ejercicios resuelto de shell scriptYarlet Urda
 
Comandos cat y uso de man
Comandos cat y uso de manComandos cat y uso de man
Comandos cat y uso de manPablo Macon
 
Creacion de scripts en linux
Creacion de scripts en linuxCreacion de scripts en linux
Creacion de scripts en linuxGabriel Calderon
 
Taller de Shell Scripting
Taller de Shell ScriptingTaller de Shell Scripting
Taller de Shell ScriptingEnrique Verdes
 

Destacado (9)

Introducción a shell script
Introducción a shell scriptIntroducción a shell script
Introducción a shell script
 
Proyecto 2016 - ITS - SISTEMAS OPERATIVOS II
Proyecto 2016 - ITS - SISTEMAS OPERATIVOS IIProyecto 2016 - ITS - SISTEMAS OPERATIVOS II
Proyecto 2016 - ITS - SISTEMAS OPERATIVOS II
 
Actividad 3_Impress
Actividad 3_ImpressActividad 3_Impress
Actividad 3_Impress
 
Ejercicios resuelto de shell script
Ejercicios resuelto  de shell scriptEjercicios resuelto  de shell script
Ejercicios resuelto de shell script
 
Comandos cat y uso de man
Comandos cat y uso de manComandos cat y uso de man
Comandos cat y uso de man
 
Creacion de scripts en linux
Creacion de scripts en linuxCreacion de scripts en linux
Creacion de scripts en linux
 
Taller de Shell Scripting
Taller de Shell ScriptingTaller de Shell Scripting
Taller de Shell Scripting
 
The linux shell. Shell Scripting desde 0
The linux shell. Shell Scripting desde 0The linux shell. Shell Scripting desde 0
The linux shell. Shell Scripting desde 0
 
Blackcats2
Blackcats2Blackcats2
Blackcats2
 

Similar a Los scripts de linux

Similar a Los scripts de linux (20)

El shell-bash
El shell-bashEl shell-bash
El shell-bash
 
32773 php-basico
32773 php-basico32773 php-basico
32773 php-basico
 
Curso Bash 3
Curso Bash 3Curso Bash 3
Curso Bash 3
 
0139-php-y-mysql-lenguaje-php-basico.pdf
0139-php-y-mysql-lenguaje-php-basico.pdf0139-php-y-mysql-lenguaje-php-basico.pdf
0139-php-y-mysql-lenguaje-php-basico.pdf
 
Perl (practical extraction and report language)
Perl (practical extraction and report language)Perl (practical extraction and report language)
Perl (practical extraction and report language)
 
Php
PhpPhp
Php
 
Shell script
Shell scriptShell script
Shell script
 
Perl4 io
Perl4 ioPerl4 io
Perl4 io
 
Estructuras de control 1.0
Estructuras de control 1.0Estructuras de control 1.0
Estructuras de control 1.0
 
Linux basico-8.PDF
Linux basico-8.PDFLinux basico-8.PDF
Linux basico-8.PDF
 
PHP Tema 2 - Lenguaje PHP básico
PHP Tema 2 - Lenguaje PHP básicoPHP Tema 2 - Lenguaje PHP básico
PHP Tema 2 - Lenguaje PHP básico
 
Administración básica de ubuntu server parte 3
Administración básica de ubuntu server   parte 3Administración básica de ubuntu server   parte 3
Administración básica de ubuntu server parte 3
 
bash
bashbash
bash
 
Introduction to linux for bioinformatics
Introduction to linux for bioinformaticsIntroduction to linux for bioinformatics
Introduction to linux for bioinformatics
 
4072954.ppt
4072954.ppt4072954.ppt
4072954.ppt
 
Tema2 3
Tema2 3Tema2 3
Tema2 3
 
Script Y Comandos De Linux
Script Y Comandos De LinuxScript Y Comandos De Linux
Script Y Comandos De Linux
 
Programación en Bash
Programación en BashProgramación en Bash
Programación en Bash
 
Script presentacion
Script presentacionScript presentacion
Script presentacion
 
Unix 1314 test
Unix 1314 testUnix 1314 test
Unix 1314 test
 

Último

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
Diapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundariaDiapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundariaAlejandraFelizDidier
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.JonathanCovena1
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxpvtablets2023
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfUPTAIDELTACHIRA
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalJonathanCovena1
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxNadiaMartnez11
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 

Último (20)

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Diapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundariaDiapositivas de animales reptiles secundaria
Diapositivas de animales reptiles secundaria
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 

Los scripts de linux

  • 2. • Script = Guión = Proceso por Lotes • Tareas repetitivas se pueden agrupar en un guión y ejecutarse automáticamente (Batch Processing). • Usaremos un editor de texto plano (por ejemplo gedit). • Con #! en la primera línea indicamos qué shell debería interpretar el resto de comandos (/bin/bash). • Posteriormente escribimos los comandos separados por saltos de línea. • Antes de ejecutar el script tendremos que darle al archivo permiso de ejecución: chmod +x fichero_script • Para ejecutar el script teclearemos el nombre del fichero anteponiéndole los caracteres ./ Introducción a los Scripts
  • 3. - Usamos un editor (por ejemplo gedit) y creamos el fichero hola.sh: #!/bin/bash clear echo “hola” - Con #! en la primera línea indicamos qué shell interpretará el resto de comandos (/bin/bash). - Posteriormente escribimos los comandos separados por saltos de línea. - Le damos permisos de ejecución: chmod +x hola.sh - Lo ejecutamos: ./hola.sh Nuestro primer shell script
  • 4. – Una variable tiene un nombre y un valor, y sirve para dotar de dinamismo y más potencia a nuestros scripts: FECHA=”15/07/2004” echo “Hoy es $FECHA” – FECHA es el nombre de la variable. – $FECHA es su valor. – Para asignar un valor, se utiliza “=”. ¡¡¡SIN ESPACIOS!! Variables Existen una serie de variables predefinidas: Las variables de entorno.Las variables de entorno. (pueden verse con el comando env)
  • 5. – Es posible leer del usuario el valor de una variable, dotando a nuestros scripts de interactividad. – cat hola.sh #!/bin/bash echo “Dime tu nombre:” read NOMBRE echo “Hola $NOMBRE, encantado de conocerte” Variables: interactividad – Para ejecutarlo tecleamos: ./hola.sh
  • 6. – Es posible pasar los parámetros o argumentos que queramos y utilizarlos dentro del script. – cat nombre.sh #!/bin/bash echo “Nombre: $1” echo “Primer Apellido: $2” echo “Segundo Apellido: $3” – ./nombre.sh Juan López Martínez – ./nombre.sh “Maria Dolores” Pradera Sánchez – $1, $2, $3... ${10}, ${11},… : argumentos – $0 es el propio script. – $#: número de argumentos que nos han pasado. – $*: todos los argumentos. “$*” = “$1 $2 $3...” Variables: parámetros o argumentos
  • 7. Operaciones aritméticas expr: Permite realizar operaciones aritméticas. - Sintaxis: expr ARG1 OP ARG2 SUMA=`expr 7 + 5` (ojoespacios!) echo $SUMA - A algunos operadores hay que anteponerles una P=`expr 7 * 5` (ojo escapar operadores!) P=`expr ( 7 + 5 ) * 2`
  • 8. ● test “$NOMBRE”==“Juan” (==, !=, >, <, >=, <=) ● test $DINERO –eq 1000 (-eq, -ne, -gt, -lt, -ge, -le) ● test -f /etc/passwd (-f, -d, -l, -r, -w, -x) ● cero = verdadero ● no cero = falso (¡¡AL REVÉS QUE EN C!!) Condiciones: test
  • 9. Control del flujo de ejecución • Alternativa simple: if • Alternativa múltiple: case • Bucles repetitivos: while, until, for
  • 10. Sintaxis: If condición then comandos else comandos fi Alternativa simple: if Ejemplo: If test “$NOMBRE”==“Juan” then echo “Hola Juan, ¿qué tal?” else echo “No te conozco” fi
  • 11. Sintaxis: case $VARIABLE in “VALOR1”) comandos ;; “VALOR2”) comandos ;; *) comandos ;; esac Alternativa múltiple: case Ejemplo: case $NOMBRE in “Juan”) echo “Hola Juan” ;; “Pedro”) echo “Pedreteee!!!!” ;; *) echo “no te conozco” ;; esac
  • 12. Sintaxis: while condición do comandos done Bucle repetitivo while (mientras) Ejemplo: N=1 while [ $N –lt 100 ] do echo “Vuelta número $N” N=`expr $N + 1` sleep 1 # Esperamos 1 segundo done
  • 13. Sintaxis: until condición do comandos done Bucle repetitivo until (hasta) Ejemplo: N=1 until [ $N –ge 100 ] do echo “Vuelta número $N” N=`expr $N + 1` sleep 1 # Esperamos 1 segundo done
  • 14. Sintaxis: for VARIABLE in LISTA do comandos done Bucle repetitivo for (para) Ejemplo 1: for N in “sopa” “carne” “pan de ajo” do echo “Hoy comemos $N” done Produce una ejecución repetitiva asignando a una variable de control valores de una lista. En la LISTA se define la separación de cada elemento por el valor de la variable de entorno IFS, que por defecto toma espacios en blanco, tabuladores y saltos de línea. Ejemplo 2: IFS=“:” echo “Directorios en el path…” for N in $PATH do echo $N done