0% encontró este documento útil (0 votos)
25 vistas18 páginas

Scripts Ejemplos 2024

El documento presenta una serie de ejemplos de scripts en Bash, que incluyen la recepción de parámetros, estructuras de control como if, while y for, así como operaciones matemáticas y manejo de cadenas. Cada ejemplo está diseñado para ilustrar diferentes aspectos de la programación en Bash, desde la entrada de datos hasta la manipulación de variables. Además, se incluyen scripts de alumnos que demuestran la aplicación práctica de estos conceptos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas18 páginas

Scripts Ejemplos 2024

El documento presenta una serie de ejemplos de scripts en Bash, que incluyen la recepción de parámetros, estructuras de control como if, while y for, así como operaciones matemáticas y manejo de cadenas. Cada ejemplo está diseñado para ilustrar diferentes aspectos de la programación en Bash, desde la entrada de datos hasta la manipulación de variables. Además, se incluyen scripts de alumnos que demuestran la aplicación práctica de estos conceptos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 18

Ejemplos de Script

Cátedra: Sistemas Operativos


ISFT OTTO KRAUSE

Ejemplo 1

#Recibeparametros.sh
#!/bin/bash
echo $0
echo $1

Ejemplo 2
#if.sh
#!/bin/bash
echo $1

if [ -z "$1" ]; then

echo No enviaste nada


else
echo "El parámetro es $1"
fi

#if2.sh
#!/bin/bash

echo "Introduzca un numero:"


read numero

if [ $numero -lt 5 ]; then


echo "El numero ingresado es menor que 5"
elif [ $numero -eq 5 ]; then
echo "El numero ingresado es 5"
elif [ $numero -gt 5 ]; then
echo "el numero ingresado es mayor que 5"
else
echo "No introdujo ningún numero"
fi
exit

Ejemplo 3
#Recibeparametros2.sh
#!/bin/bash
echo El nombre del programa es $0
echo El número total de parámetros es $#
echo Todos los parámetros recibidos son $*
echo El primer parámetro recibido es $1
echo El segundo parámetro recibido es $2
echo El tercer parámetro recibido es $3
echo El cuarto parámetro recibido es $4

Ejemplo 4
#script1.sh
#! /bin/bash
clear
nombre=“Juan”
apellidos=“Lopez”
echo “Te llamas $nombre $apellidos”

Ejemplo 5

#read.sh
#! /bin/bash
clear
echo "Introduzca un nombre:"
read nombre
echo "Introduzca un apellido:"
read apellido
echo “Te llamas $nombre $apellido”
#read2.sh

#!/bin/bash
#script ej_read
#La opción –n se emplea para evitar el retorno de carro
echo –n “Introduce una variable: “
read var
echo La variable introducida es: $var

Ejemplo 6
#read3.sh

#!/bin/bash
#script ej_read_var que lee varias variables con read
echo –n “Introduce las variables: “
read var1 var2 var3
echo Las variables introducidas son:
echo var1 = $var1
echo var2 = $var2
echo var3 = $var3

Ejemplo 7
#multiplica.sh
#!/bin/bash
#script que multiplica dos variables leídas desde teclado
echo “Multiplicación de 3 variables”
echo “-------------------------------“
echo –n “Introduce la primera variable:“
read var1
echo –n “Introduce la segunda variable:“
read var2
echo –n “Introduce la tercera variable:“
read var3
resultado=`expr $var1 \* $var2 \* $var3`
echo El resultado de la multiplicación es = $resultado
Ejemplo 8
#divide.sh
#!/bin/bash
#script que divide dos variables leídas desde teclado
echo “Cociente de dos variables”
echo “-------------------------------“
echo –n “Introduce la primera variable:“
read var1
echo –n “Introduce la segunda variable:“
read var2
resultado=`expr $var1 / $var2`
echo El resultado de la division es =$resultado

Ejemplo 9
#compara.sh
#!/bin/bash
cadena1="Hola mundo"
cadena2=""
cadena3="Hola mundo"

if [ "$cadena1" == "$cadena3" ]; then


echo 'cadena1' es igual a 'cadena3'
fi

if [ -n "$cadena1" ]; then

echo " La cadena '$cadena1' no esta vacia"


fi

if [ -z "$cadena2" ]; then
echo " La cadena 'cadena2' esta vacia"
fi
Ejemplo 10
#compara2.sh
#!/bin/bash
#ejemplo 10
valor1=10
valor2=12
valor3=12
#if [ "$cadena1" == "$cadena3" ]; then
if [ $valor1 -lt $valor2 ]; then
echo "$valor1 es menor que $valor2"
fi

if [ $valor2 -gt $valor1 ]; then


echo "$valor2 es mayor que $valor1"
fi

if [ $valor2 -le $valor3 ]; then


echo "$valor2 es menor o igual que $valor3"
fi

if [ $valor2 -ge $valor3 ]; then


echo "$valor2 es mayor o igual que $valor3"
fi

if [ $valor2 -eq $valor3 ]; then


echo "$valor2 es igual que $valor3"
fi
Ejemplo 11
#While1.sh

#!/bin/bash
MINUM=8
while [ 1 ]; do
echo "Introduzca un número: "
read USER_NUM
if [ $USER_NUM -lt $MINUM ]; then
echo "El número introducido es menor que el mío"
echo " "
elif [ $USER_NUM -gt $MINUM ]; then
echo "El número introducido es mayor que el mío"
echo " "
elif [ $USER_NUM -eq $MINUM ]; then
echo "Acertaste: Mi número era $MINUM"
break
fi
done
# Comandos inferiores...
echo "El script salió del bucle. Terminando..."
exit

Ejemplo 12
#While2.sh
#!/bin/bash
opcion=100 # Ponemos opción en 100 para que el ciclo se cumpla la
primera vez.

while [ $opcion -ne 0 ] # Cambiar a -ne para que el ciclo continúe


mientras opción no sea 0
do
echo "opcion= $opcion"
echo -n "Ingrese un número [0 para salir]: "
read opcion
done # esto finaliza el ciclo while

Ejemplo 13
#for1.sh
#!/bin/sh
# Ejemplo 5: uso del for.
for x in 1 2 3 4 5
do
echo "el valor de x es: $x"
done

Ejemplo 14
#while3.sh

#!/bin/bash
valid=true
contador=1
while [ $valid ]
do echo $contador
if [ $contador -eq 5 ];
then break
fi ((contador++))
done

Ejemplo 15
#until1.sh
#!/bin/bash
# Uso de until

# Inicializamos la opción en 1 para entrar en el ciclo.


opcion=1

# El bucle until continuará hasta que la opción sea 0.


until [ $opcion -eq 0 ]
do
echo -n "Ingrese un número [0 para salir]: "
read opcion
echo "Has ingresado: $opcion"
done

echo "Has salido del ciclo."

Ejemplo 16
#for2.sh

#!/bin/bash
#Ejemplo de bucle for para aumentar o disminuir los contadores.

for (( contador=10; contador>0; contador-- ))

do

echo -n "$contador "

done

A partir de aquí deben colocar sus script, debidamente


verificados funcionando. Mínimo 2 por persona

Por ej:
Alumno : Juan Molina
Script 1
codigo

Script 2
codigo
Alumno : Samuel Carrizo

Script 1

#!/bin/bash

# Mostrar el nombre del script

echo- "Nombre del script: $0"

# Mostrar el primer parámetro

echo- "Primer parámetro: $1"

# Mostrar el segundo parámetro (si existe)

echo- "Segundo parámetro: $2

# Mostrar todos los parámetros

echo- "Todos los parámetros: $@"

# Contar el número de parámetros pasados

echo- "Número de parámetros: $#”


Script 2

#!/bin/bash

# Uso de until modificado

# Inicializamos la variable palabra con un valor que no sea "salir" para


entrar en el ciclo.

palabra=""

contador=0

# El bucle until continuará hasta que se ingrese la palabra "salir".

until [ "$palabra" = "salir" ]

do

echo -n "Ingrese una palabra [escriba 'salir' para terminar]: "

read palabra

contador=$((contador + 1))

echo "Has ingresado: $palabra"

done

echo "Has salido del ciclo. Ingresaste $((contador - 1)) palabras.”


Alumno: Ortiz Mario

Script 1:

#!/bin/bash
#a partir de la cantidad de bancos de un aula y alumnos de un curso
#permita determinar si alcanzan los bancos existentes
#de no ser asi informar cuantos bancos seria necesario agregar.

echo "Ingrese la cantidad de alumnos en el aula"


read alumnos
echo "ingrese la cantidad de bancos disponibles"
read bancos
if [ $alumnos -lt 0 || $bancos -lt 0 ]; then
echo "Valor invalido"
exit 1
else dif=$(( $alumnos - $bancos));
fi

if [ $alumnos -gt $bancos ]; then


echo "No hay suficientes bancos en el aula"
echo "Se deben agregar $dif bancos"

elif [ $alumnos -le $bancos ]; then


echo "Si hay suficientes bancos en el aula"
fi

Script 2:

#!/bin/bash
#Se calcula el monto total de una compra
#y se da a elegir el metodo de pago
#si es en contado se hace un descuento del 15%, 20% si es debito
#y si es por tarjeta se le hace un recargo del 25%

echo "ingrese el monto de la compra"


read monto
echo "Ingrese la forma de pago efectuada(contado, debito o tarjeta)"
read pago

case $pago in contado)


total=$(($monto - ($monto*15/100)))
echo "Se le hace un descuento del 15%"
echo "El monto total a pagar es $total";;

debito)
total=$(($monto - ($monto*20/100)))
echo "Se le hace un descuento del 20%"
echo "El monto total a pagar es $total";;

tarjeta)
total=$(($monto + ($monto*25/100)))
echo "Se le hace un recargo del 25%"
echo "El monto total a pagar es $total";;

*)
echo "Metodo de pago invalido"
esac
Alumno: Leonardo Nicolas Rodriguez
script 1
#!/bin/bash
echo "Ingresar la nota"
read nota
if [[ $nota -ge 1 && $nota -le 5 ]]; then
echo "La nota es insuficiente"
elif [[ $nota -gt 5 && $nota -le 7 ]]; then
echo "La nota es aprobado"
elif [[ $nota -gt 7 && $nota -le 9 ]]; then
echo "La nota es destacado"
elif [[ $nota -eq 10 ]]; then
echo "La nota es sobresaliente"
else echo "La nota ingresada está fuera de rango"
fi
exit
script 2
#!/bin/bash
echo “Ingresar la cantidad de entradas que va a comprar”
read n
p=10000
r=0
d=0
t=0
if [ $n -eq 1 ]; then
echo “No tiene descuento, el total es de 10.000 por $n entrada(s)”
elif [ $n -eq 2 ]; then
echo “Tiene un descuento de un 10%”
r=$(($p*$n))
d=$(($r*10/100))
t=$(($r-$d))
echo “El total es de $t por $n entrada(s)”
elif [ $n -eq 3 ]; then
echo “Tiene un descuento de un 15%”
r=$(($p*$n))
d=$(($r*15/100))
t=$(($r-$d))
echo “El total es de $t por $n entrada(s)”
elif [ $n -eq 4 ]; then
echo “Tiene un descuento de un 20%”
r=$(($p*$n))
d=$(($r*20/100))
t=$(($r-$d))
echo “El total es de $t por $n entrada(s)”
fi
exit
Alumno: Carrizo Daniel

SCRIPT1

#!/bin/bash

# MUESTRA INFORMACION DEL USUARIO CUYO NOMBRE SE SOLICITA


# POR TECLADO AL EJECUTAR EL SCRIPT

# SOLICITAMOS NOMBRE DEL USUARIO Y LO ALMACENAMOS EN


# LA VARIABLE usuario

clear
echo -n "INTRODUZCA SU NOMBRE: "
read usuario
echo

# MOSTRAMOS INFORMACION DEL USUARIO EN LA VARIABLE usuario


echo "BIENVENIDO AL SISTEMA $HOSTNAME, USUARIO $usuario"
echo "Nombre de usuario: $USER"
echo "Directorio Personal: $HOME"
echo -n "Hoy es "
date +%A
echo -n "Estamos en "
date +%B
echo -n "Son las "
date +%H:%M

SCRIPT2

#!/bin/bash

echo INGRESAR 10 NUMEROS Y MOSTRAR EL MAYOR, EL MENOR,


echo CUANTOS SON POSITIVOS, CUANTOS SON NEGATIVOS Y
echo CUANTOS SON NEUTROS
echo ""

may=0
men=0
pos=0
neg=0
neu=0

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

i=0
for i in 1 2 3 4 5 6 7 8 n9 10
do

echo "Ingrese un valor entero: "


read -r num

if [ $num -gt 0 ]
then
pos=$((pos + 1))
elif [ $num -lt 0 ]
then
neg=$((neg + 1))
else
neu=$((neu + 1))
fi

if [ $num -lt $men ]


then
men=$num
elif [ $num -gt $may ]
then
may=$num
fi
done

echo "---------------------------------------------------"
echo ""
echo "Resultados:"
echo ""
echo "Total de numeros ingresados: $i"
echo ""

echo "Positivos: $pos"


echo "Negativos: $neg"
echo "Neutros: $neu"
echo "Mayor: $may"
echo "Menor: $men"
echo ""
echo "---------------------------------------------------"
echo ""
Alumno; RIVERA ANDRES
Script 1; “Como poner C en la consola de linux”
sudo apt update
sudo apt install build-essential
gcc programa.c -o programa
script 2;Solicitar al usuario el tamaño de una matriz cuadrada. Luego, llenar
dos matrices (A y B) con valores ingresados por el usuario. Realizar la suma y
el producto de ambas matrices, mostrando los resultados junto con las matrices
originales. Verificar si alguna de las matrices es simétrica
#include <stdio.h>

int main()
{
int nu;
do{
printf("De cuantos elementos sera la matrix; \n");
scanf("%d", &nu);
if(nu < 1){
printf("Ingrese un numero mayor a 1 \n");
}
}while(nu < 1);
float m [nu][nu];
printf("Cargue la Primera Matrix \n");
for(int a = 0; a < nu ; a++){
for(int b = 0; b < nu ;b++){
do{
printf("Ingrese el numero fila: %d columna; %d \n", a + 1 , b + 1
);
scanf("%f", &m[a][b]);
}while(m[a][b] < 0);
}
}
float m2 [nu][nu];
printf("Cargue la Segunda Matrix \n");
for(int a1 = 0; a1 < nu ; a1++){
for(int b2 = 0; b2 < nu; b2++){
do{
printf("Ingrese el numero fila: %d columna; %d \n", a1 + 1 , b2 +
1 );
scanf("%f", &m2[a1][b2]);
}while(m2[a1][b2] < 0);
}
}
float m3 [nu][nu];
printf("Cargue Tercera Matrix \n");
for(int a2 = 0; a2 < nu ; a2++){
for(int b3 = 0; b3 < nu; b3++){
do{
printf("Ingrese el numero fila: %d columna; %d \n", a2 + 1 , b3 +
1 );
scanf("%f", &m3[a2][b3]);
}while(m3[a2][b3] < 0);
}
}
float resultado[nu][nu];
for (int a = 0; a < nu; a++) {
for (int b = 0; b < nu; b++) {
resultado[a][b] = m[a][b] + m2[a][b] + m3[a][b];
}
}
printf("La suma de las tres matrices es:\n");
for (int a = 0; a < nu; a++) {
for (int b = 0; b < nu; b++) {
printf("%0.2f ", resultado[a][b]);
}
printf("\n");
}
float div[nu][nu];
for (int a = 0; a < 2; a++) {
for (int b = 0; b < 2; b++) {
div[a][b] = resultado[a][b] / m3[a][b];
}
}
printf("La division de C Y D:\n");
for (int a = 0; a < 2; a++) {
for (int b = 0; b < 2; b++) {
printf("%0.2f ", div[a][b]);
}
printf("\n");
}
return 0;
}

También podría gustarte