Informació del contingut
Comentem el que s'ensenya a cadascuna de les lliçons
L'objectiu és que l'alumne conegui tots els temes que s'inclouen en aquesta formació perquè tingui informació de les capacitats que aprendrà amb aquest curs.
Donant transparència absoluta als continguts explicats i generant una descripció exhaustiva en les matèries pertinents.
Lliçó 01 - Enfocament General
Presentació
Divisió dels blocs del curs
Informació dels blocs
Lliçó 02 - Perspectiva
Brqx - Qui sóc jo?
Qui sou vosaltres? - uns interessats a millorar
Temàtica del curs - curs pràctic evolutiu
Implementació - Mac - Unix - Windows - Android
Estil del curs - Tot s'explica de manera dinàmica i àgil
Creix una planta i es converteix en un bosc
Això és una Arquitectura
Realització - Es pot aplicar a la teva empresa o casa teva
Culminació - Defensa Scripting Unix a totes les empreses i projectes del món
Lliçó 03 - Scripting
Automatització
Píndoles de realitat - El que tenim i el que podem aconseguir
Informació Important
Informació Bonica
Estructures
Scripting Històric
Situació de l'scripting actual - Yaml o hcl transformen l'scripting
Lliçó 04 - Automatització
Què és la informàtica?
Base de la informàtica - Automatització
Manera de fer les coses més ràpid
Com ?
Escrivint menys
Pensant més
Recordant ràpid
Veient les coses més clares
Lliçó 05 - Realitat
Una consola Unix
Ordre (fet)
Comentaris
Ruta actual (ordre i variable) (pwd)
Llistat (ls)
Àlies
Millorar allò existent - Exemple (ll)
(lg) existeix perquè no es pot crear una funcio d'un àlies existent
Pipes (canonades) - en què es basa?
Ordre de cerca (grep))
Exemple anterior Arquitectura - terraform
Pildores de realitat
Lliçó 06 - Informació
Com sabem el que tenim?
Com ho organitzem?
Com ho recordem?
Netejat de pantalla (clear)
Visor de fitxers (cat)
Una funció - tros de codi que farà alguna cosa
Extensions significatives
Càrrega de funcions (el puntet (.) )
Informació de les funcions ( -? )
Necessitem eines adequades, actualitzades, àgils i
boniques per a la nostra batalla diària
Millor editor actual (Visual Studio Code)
Comparador d'expressions (if)
Base Scripting: Mantenir una documentació actualitzada de qualsevol cosa que es faci
Llistes de funcions ( el concepte )
Visualització de variables ( formes de mostrar - les )
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 03 - Scripting
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 04 - Inici Curs
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 03 - Scripting
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 07 - Informació Bonica
La informació ha de ser bonica/atractiva perquè s'utilitzi
versió amb color de l'editor (vim)
Som espècie Visual
El color aclareix les coses
Jugarem amb els colors (tput)
Coneixerem la "màgia"
Definició de colors amb seqüències d'escapament
Concepte de prompt ( ps1 )
No hi ha màgia... hi ha Arquitectura
Nom de la màquina (hostname)
Ordres de color ( setblue - setgreen )
Serem capaços d'establir la nostra arquitectura
perquè ens informi d'una manera atractiva i visual
Lliçó 08 - Estructures
Saber què existeix - O error o pèrdua de funcionalitat
Condicions en unix (if .. fi)
Bucles d'unix (for do.. done)
Selector de casos (casi .. esac)
Important conèixer les Estructures
L'scripting unix és per crear allò que no existeix i millorar allò que existeix
però no per perdre el que ja existeix
Com funciona la comanda vaig veure actualment (vaig veure | vim | .vimrc)
No podem fer servir un àlies anomenat (do)
Hem de conèixer les estructures
No és un curs d´unix, però anem aprenent unix
Lliçó 04 - Inici Curs
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 03 - Scripting
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 04 - Inici Curs
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 09 - Scripting Històric
El que s'ha fet servir a les empreses
Fitxers de personalització (profile)
Fitxers d'entorn (settings)
Còpies de seguretat (backup)
Alguns àlies
Per què tan poc?
És la part més trista de l'evolució de sistemes
S'usa poc per la por del canvi
Por al desconeixement
Por d'aprendre
Por de les arquitectures
Desconeixement dels seus avantatges, només es veu el temps en fer-ho
A Corte Inglés ... " En sistemes no es programa "
A Mapfre ... " No van voler fer servir les arquitectures"
A Telefónica ... "Només veien desavantatges"
Advocar per l'ús de scripting... és l'únic camí
Les tendències actuals van cap a això
És trist, però és la realitat
És un camí que hem de canviar
Cal donar una importància radical a l'scripting per administrar sistemes
Perquè els seus avantatges són infinites
Lliçó 10 - Yaml no ho mata
Neix un llenguatge pensat per als humans (yaml)
Apareix un llenguatge per manejar cloud (hcl)
Canvi de scripts a configuració
Eines específiques per grans fabricants
Eines més generals pels clouds
Programació Declarativa
La resta de paràmetres els recupera del proveïdor
Exemple mínim de fitxer per a kubernets (pod)
Exemple més intel·ligent (deployment)
Exemple d'ec2 d'Aws (hcl)
Tot funcionarà amb scripts
Perquè fer les coses via web implica dedicar molt de temps,
a banda dels possibles errors humans
Tots els nous productes es poden adaptar a les teves necessitats ia la teva arquitectura
Lliçó 11 - Unix
Variables i àlies
Problemes que ens poden donar els comandaments
Diferència entre scripts i funcions
Inici de l´Arquitectura
Ordres pràctiques
Ajustar sortides ( cut )
Canviar sortides (tr)
Canviar sortides i fitxers ( set )
Arribarem a l'arquitectura
Lliçó 12 - Variables i Àlies
Diferències entre variables i àlies
Diferències en execució
Àlies executa coses
Què és l'entorn? Què s'exporta?
Entorn és una zona de l'intèrpret d'ordres on els objectes es coneixen
Si s'exporta és conegut als entorns fills
No tot es pot exportar
Exportació de variables (export)
Una arquitectura de scripting no pot utilitzar altres entorns
Perquè els àlies són pràcticament imprescindibles
Tot ha de ser amb el puntet
Les variables es defineixen en execució
Lliçó 13 - Ordres
Saber si hi ha les ordres ( which )
Conèixer el que tenim a l'entorn (set | env)
Conèixer els àlies definits ( àlies )
escapament d'ordres ( usant la barra d'escapament "\")
eliminar àlies ( unalias )
És un curs de scripting... scripting sobre unix
i Unix és meravellós
Lliçó 14 - Scripts vs Funcions
Com carregar-les
Com invocar-les
Peculiaritats
Un script sempre existirà, no depèn de l'entorn
però està situat en un punt específic del sistema
Tornada enrere ( cd - )
Una funció si depèn de l'entorn
Funcionarà des de qualsevol ruta del sistema
Per poder utilitzar una arquitectura de scripting cal fer servir funcions
Els scripts mai no apareixen a la informació de l'entorn
Tant els scripts com les funcions poden rebre paràmetres
Els paràmetres es reben amb dollar ($)
Si canviem una funció cal tornar-la a carregar
Quan es facin canvis a l'arquitectura caldrà tornar-la a carregar
L'arquitectura es fa amb funcions i àlies
Els scripts són una manera de carregar la nostra arquitectura,
però per a scripting unix no són pràctics
Lliçó 15 - Arquitectura I
Per fi ha arribat!!
Una arquitectura mai acaba
Fins i tot podran passar generacions
El programari, quan està ben fet, mai no acaba
Informació de versió i data ( date )
Tot ha de ser a l'entorn. Tot es carrega amb el puntet ( . )
Unes funcions especials són les tipus "llista", ens informen del que hi ha
Acabem de posar la llavor
cal regar-la.. cal fer-hi espècies
cal fer que creixi el més pràctica possible i que creixi bonica
que s'adapti a cadascun dels projectes i empreses del món
Lliçó 16 - Arquitectura II
Ens divertirem
Un curs ha de ser divertit
Final d'una cadena (basename)
Resta de la cadena (dirname)
És fàcil gestionar el prompt amb arquitectures unix
En utilitzar un PS1 amb funcions, s'interpreten contínuament
La pantalla és nostra, que no ens la robi el prompt
problemes en carregar els fitxers per les rutes actuals
Es requereix una base comuna
Un lloc on s'executin els scripts i sempre sigui el mateix
Lliçó 17 - Arquitectura III
Tornem a aplicar "màgia"
Ja funciona des de qualsevol lloc
Com que partim d'una base comuna
Sempre es parteix d'una ruta comuna per a llistes i per a scripts
Seqüències d'escapament en vi (esc:)
Totes les llistes tenen ARQ
Cerca ràpida de fitxers ( ff )
Còpia recursiva sense permisos ( cf )
Els colors són a l'arquitectura ( tput )
Data amb composició ( date )
Llista de funcions més acolorida
Ja tenim el test plantat ( arquitectura )
Manca fer-la créixer
Però ja sap que creixerà
Sabem que funciona
Sabem que s'executa des de qualsevol lloc
Lliçó 18 - Ordres pràctiques: cut
Ajustar sortides ( cut )
Canviar sortides (tr)
Canviar sortides ( set )
Tall per posició ( cut -c )
Tall per delimitador ( cut -d -f )
Esborrat de pantalla ( clear )
Històric d'ordres (history)
Amic / enemic dels administradors
History tallat ( h8b = history | cut -c8- )
History més potent ( h8 = h8b | grep )
Esborrat d'historial ( history -c )
Tall pel cap / per dalt (head)
Tall per la cua / per baix ( tail )
Format de fitxer amb separadors (csv)
Obtenir les ips del sistema ( ip a )
Demostració càrrega de funcions
Forma de carregar l'arquitectura en un script
Redirecció al dispositiu nul ( &> /dev/null )
Si volem fer servir l'arquitectura en un script hem de carregar-la prèviament
Els errors se solucionen, es pensen, s'analitzen
es van resolent i de mica en mica això va creixent
El meu objectiu és que es vegi que tot és arquitectura
i que els protagonistes sou vosaltres
Lliçó 19 - Cut - Arquitectura
Aprofitaré cada capítol que anem veient per anar millorant l'arquitectura
i adaptant-la a la idea de practicitat que us vull transmetre
Una arquitectura ha de ser pràctica i bonica i en aquesta línia treballarem
S'afegeix anagrama a l'arquitectura
Funcio per obtenir domini ( getdom )
Àlies de càrrega d'arquitectura ( A )
Àlies d'informació ( i )
Formes de depurar scripts ( prova / error )
No cal posar tota la informació
L'arquitectura ha de ser pràctica i bonica
Ruta actual ( pwd )
És fàcil tornar a carregar l'arquitectura
És fàcil veure els canvis
És fàcil evolucionar
Lliçó 20 - Ordres Pràctiques : tr
Canvi de textos en frase no es fa amb tr
Canvi de lletres amb tr
Canvi de minúscules a majúscules ( tr )
Canvi de caràcter per tab amb tr ( \t )
Canvi de caràcter per salt de línia amb tr (\n)
Lliçó 21 - Tr - Arquitectura - reflexió
Repassem evolució arquitectònica fins ara
És radical que hi hagi una base comuna
Ja tenim la perspectiva de com ha anat evolucionant
Conversió a majúscules ( mayus )
Aquesta és la idea arquitectònica
Tenim una base que ja entenem i anem afegint parts
Aquest capítol ens ha servit per no perdre'ns
És molt important la documentació
Documentar bé les coses ia poc a poc la planta "creix"
Lliçó 22 - Ordres pràctiques : set
Canviar una paraula per una altra ( set s/A/B/g )
Sigueu avançat / intel·ligent - ajust delimitador ( set s;A;B;g )
Sigueu ara és meravellós
ajustament amb doble barra - set no ho interpreta bé
canvi de textos en fitxers ( set )
Lliçó 23 - Set - arquitectura
Intentarem no barrejar informació de noves ordres
amb canvis arquitectònics
Per minimitzar la complexitat a fi que ningú es perdi
Solucio d'ajustos amb funcio formateig
Nova variable per a les llistes ( ARQ_L )
Exemples amb set ( funcio canvia_fitxer )
Facilitat de recordar set
Coneixement d'alguna cosa que sabem que funciona (que ha funcionat abans)
S'anteposa "z" per apilar fitxers/carpetes en sortides
Això és scripting unix ... canvi ... A ... i
Escriure el mínim possible
Reutilitzar tot i que la informació estigui en un sol lloc
Lliçó 24 - Actualitat
Gestor de versions ( git )
Plataformador d'arquitectures (terraform)
Orquestrador de contenidors (kubernets)
Núvol d'Amazon (aws)
Núvol de Microsoft ( azure )
Núvol de Google (Gcloud)
Núvol econòmic ( Digital Ocean )
Lliçó 25 - Git
És el producte més important que ha aparegut a la informàtica en els últims 30 anys
Ha permès que apareguin variants per fer les coses i ara, o bé es fa bé o desapareix
És un control de versions
Tenim uns documents/codi/imatges i no volem que es perdi
Ho versionem... com a 1.0
Fem canvis i volem tornar a la versió guardeu
Recuperem la versió i tot està igual que abans de perdre's
És un control de versions en local
Tot el que fas amb Git és al teu equip
Ecosistema de git (git flow)
github és un lloc on trobar qualsevol programa lliure del món
és una plataforma de Microsoft on qualsevol persona/empresa/organització pot pujar codi
tothom qui vulgui , sense pagar per això i disponible per a tothom
Gitlab és un ajust de github per generar pipelins
Github és gratis tret que siguin projectes privats
Gitlab només és gratis per a projectes petitets
Gitlab és una manera que s'executin les coses soles
LA idea és que tu crees una versió, gitlab s'adona del canvi
i automàticament desplega aquesta versió
Github actions és un ajustament de la filosofia gitlab a github
Git és del "bo" de Microsoft
En crear Git Microsoft ha revolucionat tots els projectes del món
Microsoft és molt bo i té moltes coses molt bones i una de les coses millors que té és git
Bill gates canvio la seva història i ara està donant milions de dòlars com a causes benèfiques
En crear el Visual Studio Code ha revolucionat tots els editors del món
Lliçó 26 - Git Flow
Flux de git :
1. Es parteix d'una branca principal
2. Es crea una nova branca en local (checkout)
3. Fas canvis
4. Puges aquests canvis ( push )
5. Després has d'anar-te'n a Github per fer un merge request
El format de creo coses, faig un merge, es canvia en pla bucle és el que s'anomena
una pipeline
Altres fabricants com CircleCI o Jenkins són altres alternatives per a pipelins
La base de qualsevol desenvolupament, de qualsevol arquitectura és que els canvis pugin a github
les arquitectures pugen a github
els desenvolupaments pugen github
Estem fent que el programari lliure triomfi sense pagar
Que sigui la base de l'evolució de la humanitat el 2023
Git és un amic i github és un altre amic
Lliçó 27 - Git Use
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 28 - Git Arq
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 29 - Cloud - El Núvol
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 30 - Terraform
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 31 - Terraform Use / Flow
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 32 - Terraform Arq
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 33 - Kubernetes
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 34 - Kubernetes Use / Flow
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 35 - Kubernetes Arq
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 36 - Aws
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 37 - Aws Use
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 38 - Aws Arq
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 39 - Azure
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 40 - Azure Use
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 41 - Azure Arq
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 42 - Google Cloud
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 43 - Gcloud Use
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 44 - Gcloud Arq
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 45 - Digital Ocean
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 46 - DOcean Use
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 47 - DOcean Arq
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 48 - Utilíssimes (MyBest)
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 49 - CdN - Retrocés àgil
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 50 - g - Cercador (super grep)
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 51 - f2 - filtre per extensió
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 52 - ren - reanomenador
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 53 - rep - reemplaçador
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 54 - ch - canviador de rutes
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 55 - iPath - Intelligent Path
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 56 - Sistemes
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 57 - Windows
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 58 - Linux
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 59 - Mac
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 60 - Android
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 61 - Passatge al núvol
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 62 - Aws
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 63 - Azure
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 64 - Google Cloud
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 65 - Digital Ocean
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Lliçó 66 - Git
Aquesta és la descripció del teu projecte. Ofereix una breu descripció per explicar el context i els antecedents de la teva feina. Fes clic a “Editar text” o doble clic a la caixa per començar.
Lliçó 67 - Fi de la diversió? Revolució !! #scriptingunix
Automatització
Informació Important | Bonica
Estructura
Scripting Històric
Situació del scripting actual
Saga : SUC 2.0 ... 2025
Multi Language Course - Podràs fer-ho en qualsevol idioma
Núvols:
-Ali Cloud
CI/CD:
Jenkins
Noves Utilíssimes (MyBest 2.0):
- Function ll
- Procés i Espai
- Ampliació cut (ecut and scut)
- exist file (pending to create)
- pretty counters (pending to create)
- error fets & output fets --> I O ---> Assegurar-nos de sortides de funcio | error
- UP function
- is_number
- exist (exist file | ...) - exist_folder
- svgtopng
- flagtomp3