Si escucho la palabra tema una vez más me va a dar una embolia
Bienvenida e Introducción
Todo lo que aprenderás para programar en Bash Shell
Componentes de Linux, Tipos de Shell y Comandos de información
Bash scripting
Crear nuestro primer Script
Ejecutar nuestro script con un nombre único
Programación Shell Básica
Declaración de Variables y Alcance en Bash Shell
Tipos de Operadores
Script con Argumentos
Sustitución de Comandos en variables
Debug en Script
Reto 1
Script Interactivos
Capturar información usuario
Expresiones Regulares
Validar información
Paso de parámetros y opciones
Descargar información de Internet
Reto 2
Condicionales
Sentencias If/Else
Reto 3
If Anidados
Expresiones Condicionales
Sentencias Case
Iteración
Arreglos
Sentencia for loop
Sentencia while loop
Loop Anidados
Break y continue
Menú de Opciones
Reto 4
Archivos
Archivos y Directorios
Escribir dentro de archivos
Leer Archivos
Operaciones Archivos
Reto 5
Empaquetamiento
Empaquetamiento TAR, GZIP y PBZIP 2
Respaldo Empaquetado con clave
Transferir información red
Reto 6
Funciones
Crear funciones y Paso de Argumentos
Funciones de instalar y desinstalar postgres
Funciones sacar y restaurar respaldos en postgres
Reto 7
Cierre del curso
Cierre
Aún no tienes acceso a esta clase
Crea una cuenta y continúa viendo este curso
Los Arreglos son un tipo de variables que puede contener N cantidad de valores ya sean cadenas de texto, numéricos, etc. Estos siempre empiezan desde la posición número 0.
Aportes 28
Preguntas 4
Si escucho la palabra tema una vez más me va a dar una embolia
Para cambiar el color en vim ingresar :colorscheme y el nombre del esquema de color. Por ejemplo
:colorscheme desert
Para obtener la lista de esquemas de color instalador, ingresar :colorscheme, espacio y Ctrl + D.
Para establecer el esquema de color por defecto , editar el archivo .vimrc y agregar una linea colorscheme desert
El tema de su muletilla “El tema” me estresa mucho 😣
Aquí les dejo el esquema de colores de Atom para vim:
https://github.com/joshdick/onedark.vim
Si quieren poder autocompletado:
https://github.com/ycm-core/YouCompleteMe
Y para manejar plugins con facilidad:
https://github.com/VundleVim/Vundle.vim
Les dejo un resumen de la clase:
Los Arreglos son un tipo de variables que puede contener N cantidad de valores ya sean cadenas de texto, numéricos, etc. Estos siempre empiezan desde la posición número 0.
Cual sera el “tema” de Pedro y el “tema” de Susana 😮
¿cómo es que es el asunto? dice corchetes y escribe paréntesis, dice llaves y escribe corchetes, dice corchetes y escribe corchetes… así es complicado escuchar lo que dice mientras escribe otra cosa.
Equipo de success, si hacen seguimiento a estos cursos antes de ser lanzados, ojo con esos detalles.
Mi aporte de hoy
# imprimir todos los valores
echo "Arreglo de Números: ${arregloNumeros[*]}"
# imprime tamaño de los arreglos
echo "Tamaño del arreglo de Números: ${#arregloNumeros[*]}"
# imprimir las la posicion 3 de los arreglos
echo "Posición 3 del arreglo de Números: ${arregloNumeros[3]}"
# imprimir los indeces de los arreglos
echo "Indeces de los arreglo de Números: ${!arregloNumeros[@]}"
# para este caso @ funciona igual que *
Poderoso el manejo de arreglos es bash.
una duda:
el numero 20 no se debio insertar en la posicion 6? ya que se empieza a contar desde 0.
#!/bin/bash
numbers_array=(1 2 3 4 5 6)
strings_array=(Marco, Antonio, Pedro, Susana)
ranges_array=({A..Z} {10..20})
echo "Numbers array: ${numbers_array[*]}"
echo "Strings array: ${strings_array[*]}"
echo "Ranges array: ${ranges_array[*]}"
echo "Numbers array size: ${#numbers_array[*]}"
echo "Strings array size: ${#strings_array[*]}"
echo "Ranges array size: ${#ranges_array[*]}"
echo "Third position of numbers array: ${numbers_array[2]}"
echo "Third position of strings array: ${strings_array[2]}"
echo "Third position of ranges array: ${ranges_array[2]}"
numbers_array[7]=20
unset numbers_array[0]
echo "Numbers array: ${numbers_array[*]}"
echo "Numbers array size: ${#numbers_array[*]}"
Hola… les dejo mi script…
# ! /bin/bash
# Programa para uso de arreglo
# Author: Diego Beltran histagram @diegodevelops
arregloNum=(1 2 3 4 5 6)
arregloString=(Diego, Andres, Mariana, Beatriz)
arregloRango=({A..Z} {10..20})
#imprimir valores
echo "Arreglo números: ${arregloNum[*]}"
echo "Arreglo cadenas: ${arregloString[*]}"
echo "Arreglo rangos: ${arregloRango[*]}"
#imprimiendo y tamaños
echo "Tamaño Arreglo números: ${#arregloNum[*]}"
echo "Tamaño Arreglo cadenas: ${#arregloString[*]}"
echo "Tamaño Arreglo rangos: ${#arregloRango[*]}"
#imprimir la posición 3 del los arreglos
echo "Pos 3 Arreglo números: ${arregloNum[3]}"
echo "Pos 3 Arreglo cadenas: ${#arregloString[3]}"
echo "Pos 3 Arreglo rangos: ${#arregloRango[3]}"
#Añadir y eliminar valores en un arreglo
arregloNum[7]=20
unset arregloNum[0]
echo "Arreglo numeros: ${arregloNum[*]}"
echo "Tamaño arreglo numeros: ${#arregloNum[*]}"```
Saludos
La clase está bien, pero creo que, el tanto hablar no hace las cosas más explicativas, mientras más simple y concreta sea la explicación que se brinde, mejor será el entendimiento que se demuestra y mejor la información que se puede compartir.
#!/bin/bash
Array1=(1 2 3 4 5 6)
String1=(perro, gato, caballo, canario)
Rank1=({A…Z} {10…20})
#Vista
echo -e "\n------->"
echo -e "Array: ${Array1[]}"
echo -e "\nString: ${String1[]}"
echo -e “\nRank: ${Rank1[*]}\n”
#Sizes
echo -e "\n------->"
echo -en "Array: ${#Array1[]}"
echo -en "\nString: ${#String1[]}"
echo -en “\nRank: ${#Rank1[*]}\n”
#Positions
echo -e "\n------->"
echo -en "Vista en position [3]:"
echo -en “\nArray: ${Array1[3]}\nString: ${String1[3]}\nRank: ${Rank1[3]}\n”
#Set Value:
echo -e "\n------->"
Array1[7]=20; unset Array1[0]
echo -en "Se elimina la posicion [0] en Array: ${Array1[]}"
echo -en "\nNuevo Array: ${Array1[]}"
echo -en “\nNueva longitud del Array: ${#Array1[*]}\n\n”
He visto varios comentando que el “tema” de la muletilla -guiño, guiño- no debería importarnos. Por supuesto, todos podemos tener muletillas, pero más allá de la (innecesaria) corrección política, cuando se es docente se comunica y si hay algo que distrae o bloquea la efectiva comunicación, entonces hay que trabajar para mejorarlo, máxime cuando es tan marcado.
Comparto el tema de mi codigo sobre el tema de arreglos
#!/bin/bash
# Programa para el tema de los arreglos
# Autor: Milo
arregloNumeros=(1 2 3 4 5 6)
arregloCadenas=(Juan, Pedro, Susana, Bog, Fusa, Zipa)
arregloRangos=({A..G} {10..20})
#imprimiré todos los valores
echo "Arreglo del tema de Números: ${arregloNumeros[*]}"
echo "Arreglo del tema de Cadenas: ${arregloCadenas[*]}"
echo "Arreglo del tema de Rangos: ${arregloRangos[*]}"
#imrimiré el tamaño de los arreglso
echo "Tamaño Arreglo de Números: ${#arregloNumeros[*]}"
echo "Tamaño Arreglo de Cadenas: ${#arregloCadenas[*]}"
echo "Tamaño Arreglo de Rangos: ${#arregloRangos[*]}"
#>Imprimri las posicion 2 de cada uno
echo "posición 3 Arreglo de Números: ${arregloNumeros[3]}"
echo "posición 3 Arreglo de Cadenas: ${arregloCadenas[3]}"
echo "posición 3 Arreglo de Rangos: ${arregloRangos[3]}"
#añadir y elminar valores de un arreglo.
arregloNumeros[7]=20
unset arregloNumeros[0]
echo "Arreglo de Números: ${arregloNumeros[*]}"
echo "Tamaño Arreglo de Números: ${#arregloNumeros[*]}"
echo "posición 7 Arreglo de Números: ${arregloNumeros[7]}"
Array[index]=value # Agregar valores
unset Array[index] # Eliminar valores
Script escrito y probado en Ubuntu 18.04
5 array_fib=(1 1 2 3 5 8)
6 array_chain=(“first” “second” “third” “fourth” “fifth” “sixth”)
7 array_range=([a…z] [0…9])
8
9 #Print the values of all arrays
10 echo "Array of fib: ${array_fib[]}"
11 #show the values in separated lines
12 echo "Array of chain: ${array_chain[@]}"
13 #show the values in the same lines
14 echo "Array of range: ${array_range[]}"
15
16 #Print the length of all arrays
17 echo "Length of array of fib: ${#array_fib[]}"
18 echo "Length of array of chain: ${#array_chain[]}"
19 echo "Length of array of range: ${#array_range[]}"
20
21 #Print the value in pos ‘1’ of all arrays
22 echo "Value in position 1 of array of fib: ${array_fib[1]}"
23 echo "Value in position 1 of array of chain: ${array_chain[1]}"
24 echo "Value in position 1 of array of range: ${array_range[1]}"
25
26 #Eliminate the last value in array
27 unset array_fib[5]
28 unset array_chain[5]
29 unset array_range[1]
30 echo -e ""
31
32 echo -e "All arrays updated with the last value erased in each of$
33 #Print the values of all arrays
34 echo "Array of fib: ${array_fib[]}"
35 #show the values in separated lines
36 echo "Array of chain: ${array_chain[@]}"
37 #show the values in the same lines
38 echo “Array of range: ${array_range[*]}”
Todos los elementos del arreglo
${arreglo[*]}
Tamaño del arreglo
${#arreglo[*]}
Un elemento del arreglo
${arreglo[posición]}
Ingresar un elemento al arreglo
arreglo[posición]=elemento
Eliminar un elemento del arreglo
unset arreglo[posición]
En Fish shell:
set -l intArray 1 2 3 # Literales (enteros)
set -l stringArray Uno Dos Tres # Literales (cadenas de caracteres)
set -l rangeArray (seq 1 10) (seq 65 90 | awk '{printf("%c\n",$1)}') # Rangos
echo "Longitud de arreglo de enteros: "(count $intArray) # 3
echo "Longitud de arreglo de cadenas de caracteres: "(count $stringArray) # 3
echo "Longitud de arreglo de enteros: "(count $rangeArray) # 36
echo "Acceso por índice: $intArray[1]" # 1
echo "Acceso por índice multiple: $rangeArray[3 11 36]" # 3 A Z
echo "Acceso por rango: $stringArray[2..3]" # Dos Tres
echo "Acceso por rango inverso: $stringArray[3..2]" # Tres Dos
gracias
Buenas noches, disculpen alguien podría facilitarme el link del repositorio de Git Hub de este curso.
Gracias
Entendido
#!/bin/bash
# Programa para utilziat arreglos
# DBZ
arregloNumeros=(1 2 3 4 5 6)
arregloCadenas=(Ana, Isabela, Diana, David)
arregloRangos=({A..z} {1..20})
#Imprimir todos los valores
echo "Arreglo de Números:${arregloNumeros[*]}"
echo "Arreglo de Cadenas:${arregloCadenas[*]}"
echo "Arreglo de Números:${arregloRangos[*]}"
#Imprimir los tamaños de los arreglos
echo "Tamaño Arreglo de Números:${#arregloNumeros[*]}"
echo "Tamaño Arreglo de Cadenas:${#arregloCadenas[*]}"
echo "Tamaño Arreglo de Números:${#arregloRangos[*]}"
#Imprimir la posición 3 del arreglo de números, cadenas de rango
echo "Posición 3 Arreglo de Números:${arregloNumeros[3]}"
echo "Posición 3 Arreglo de Cadenas:${arregloCadenas[3]}"
echo "Posición 3 Arreglo de Rangos:${arregloRangos[3]}"
#Añadir y eliminar valores en un arreglo
arregloNumeros[7]=20
unset arregloNumeros[0]
echo "Arreglo de Números:${arregloNumeros[*]}"
echo "Tamaño arreglo de Números:${#arregloNumeros[*]}"
Agregué un par de variantes como agregar un elemento al final sin saber cuál es el índice del último elemento.
#!/bin/bash
# Programa para ejemplificar el uso de los arreglos
arregloNumeros=(1 2 3 4 5)
arregloCadenas=(Juan, Pedro, Luis, Alex)
arregloRangos=({A..Z} {10..20})
#imprimir todos los valores
echo "Arreglo de Números: ${arregloNumeros[*]}"
echo "Arreglo de Cadenas: ${arregloCadenas[*]}"
echo "Arreglo de Rangos: ${arregloRangos[*]}"
#Imprimir los tamaños de los arreglos
echo "Tamaño de Arreglo de Números: ${#arregloNumeros[*]}"
echo "Tamaño de Arreglo de Cadenas: ${#arregloCadenas[*]}"
echo "Tamaño de Arreglo de Rangos: ${#arregloRangos[*]}"
#Imprimir la posición 3 de cada arreglo
echo "Posición 3 del arreglo de Números: ${arregloNumeros[3]}"
echo "Posición 3 del arreglo de Cadenas: ${arregloCadenas[3]}"
echo "Posición 3 del arreglo de Rango: ${arregloRangos[3]}"
#Añadir y eliminar valores en un arreglos
#Si la posición no es la última + 1 no pasa nada, no funciona
echo -e "\nArreglo de Números Original: ${arregloNumeros[*]}"
echo -e "\nAgrega el elemento en la posición después del último"
arregloNumeros["${#arregloNumeros[*]}"]=21
echo "Arreglo de números: ${arregloNumeros[*]}"
echo "Tamaño arreglo de Números: ${#arregloNumeros[*]}"
echo -e "\nAgrega el elemento en la posición del último, reemplazandolo"
arregloNumeros["${#arregloNumeros[*]} - 1"]=22
echo "Arreglo de números: ${arregloNumeros[*]}"
echo "Tamaño arreglo de Números: ${#arregloNumeros[*]}"
echo -e "\nAgrega el elemento en la posición que se le indique (2), reemplazándo al elemento existente"
arregloNumeros[2]=23
echo "Arreglo de números: ${arregloNumeros[*]}"
echo "Tamaño arreglo de Números: ${#arregloNumeros[*]}"
echo -e "\nAgrega el elemento en la posición después del último"
arregloNumeros["${#arregloNumeros[*]}"]=24
echo "Arreglo de números: ${arregloNumeros[*]}"
echo "Tamaño arreglo de Números: ${#arregloNumeros[*]}"
echo -e "\nElimina el elemento en la posición indicada (0)"
unset arregloNumeros[0]
echo "Arreglo de números: ${arregloNumeros[*]}"
echo "Tamaño arreglo de Números: ${#arregloNumeros[*]}"```
Seria Genial que cambiara los colores de la consola, cuesta mucho ver algunos comandos.
Así quedo mi script.
# !/bin/bash
# Programa para ejemplificar el uso de los arreglos
# Autor: Marco
arregloNumeros=(1 2 3 4 5 6)
arregloCadenas=(Marco, Antonio, Pedro, Susana)
arregloRangos=({A..Z} {10..20})
#Imprimir todos los valores
echo "Arreglo de numeros: ${arregloNumeros[*]}"
echo "Arreglo de Cadenas: ${arregloCadenas[*]}"
echo "Arreglo de Rangos: ${arregloRangos[*]}"
#Imprimir los tamaños de los arreglos
echo "Tamaño de arreglo de Numeros: ${#arregloNumeros[*]}"
echo "Tamaño de arreglo de Cadenas: ${#arregloCadenas[*]}"
echo "Tamaño de arreglo de Rangos: ${#arregloRangos[*]}"
#Imprimir la posicion 3 del arreglo de numeros, cadenas y rangos
echo "Posicion 3 del arreglo de numeros: ${arregloNumeros[3]}"
echo "Posicion 3 del arreglo de Cadenas: ${arregloCadenas[3]}"
echo "Posicion 3 del arreglo de Rangos: ${arregloRangos[3]}"
#Añadir y Eliminar valores del arreglo
arregloNumeros[7]=20
unset arregloNumeros[0]
echo "Arreglo de numeros: ${arregloNumeros[*]}"
echo "Tamaño arreglo de Numeros: ${#arregloNumeros[*]}"
El resultado:
# ! /bin/bash
# Programa para ejemplificar el uso de los arreglos
# Autor: Martin Davila
arregloNumeros=(1 2 3 4 5 6)
arregloCadenas=(Marco, Antonio, Pedro, Susana)
arregloRangos=({A..Z} {10..20})
#Imprimir todos los valores
echo "Arreglo de Números:${arregloNumeros[*]}"
echo "Arreglo de Cadenas:${arregloCadenas[*]}"
echo "Arreglo de Números:${arregloRangos[*]}"
#Imprimir los tamaños de los arreglos
echo "Tamaño Arreglo de Números:${#arregloNumeros[*]}"
echo "Tamaño Arreglo de Cadenas:${#arregloCadenas[*]}"
echo "Tamaño Arreglo de Números:${#arregloRangos[*]}"
#Imprimir la posición 3 del arreglo de números, cadenas de rango
echo "Posición 3 Arreglo de Números:${arregloNumeros[3]}"
echo "Posición 3 Arreglo de Cadenas:${arregloCadenas[3]}"
echo "Posición 3 Arreglo de Rangos:${arregloRangos[3]}"
#Añadir y eliminar valores en un arreglo
arregloNumeros[7]=20
unset arregloNumeros[0]
echo "Arreglo de Números:${arregloNumeros[*]}"
echo "Tamaño arreglo de Números:${#arregloNumeros[*]}"```
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.