Content information
We discuss what is taught in each of the lessons
The objective is for the student to know all the topics covered in this training so that they have information about the skills they will learn with this course.
Giving absolute transparency to the contents explained and generating an exhaustive description in the relevant matters.
Lesson 01 - General Approach
Presentation
Division of course blocks
Block information
Lesson 02 - Perspective
Brqx - Who am I?
Who are you ? - some interested in improving
Course theme - evolutionary practical course
Implementation - Mac - Unix - Windows - Android
Course style - Everything is explained in a dynamic and agile way
A plant grows and becomes a forest
That is an Architecture
Realization - It can be applied to your company or your home
Culmination - Unix Scripting Defense in all companies and projects in the world
Lesson 03 - Scripting
Automation
Reality pills - What we have and what we can get
Important information
Nice Information
Structures
Historical Scripting
Current scripting situation - Yaml or hcl transform scripting
Lesson 04 - Automation
What is computing?
Basis of computing - Automation
Way to do things faster
As ?
writing less
thinking more
Quick remembering
Seeing things more clearly
Lesson 05 - Reality
A Unix console
Order (echo)
Comments
Current path (command and variable) (pwd)
List (ls)
Alias
Improve the existing - Example (ll)
(lg) exists because you cannot create a function from an existing alias
Pipes - what is it based on?
Search order (grep))
Previous example Architecture - terraform
reality pills
Lesson 06 - Information
How do we know what we have?
How do we organize it?
How do we remember it?
Screen cleaning (clear)
File viewer (cat)
A function - piece of code that will do something
Significant extensions
Function loading (the dot (.))
Feature information (-?)
We need adequate, updated, agile and
beautiful for our daily battle
Best Current Editor (Visual Studio Code)
Expression comparator (if)
Base Scripting: Maintain up-to-date documentation of anything you do
Lists of functions (the concept)
Visualization of variables (ways to display them)
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 03 - Scripting
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 04 - Course Start
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 03 - Scripting
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 07 - Beautiful Information
Information must be beautiful/attractive to be used
colored version of the editor (vim)
We are Visual Species
Color makes things clearer
Let's play with colors (tput)
We will know the "magic"
Defining colors with escape sequences
Prompt concept (ps1)
There is no magic...there is Architecture
Machine name (hostname)
Color commands ( setblue - setgreen )
We will be able to establish our architecture
to inform us in an attractive and visual way
Lesson 08 - Structures
Know what exists - Either error or loss of functionality
Conditions in unix (if .. fi)
Unix loops (for do .. done)
Case selector (case .. esac)
It is important to know the Structures
Unix scripting is for creating what does not exist and improving what exists
but not to lose what already exists
How the vi command currently works (vi | vim | .vimrc)
We cannot use an alias called (do)
We must know the structures
It is not a unix course, but we are learning unix
Lesson 04 - Course Start
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 03 - Scripting
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 04 - Course Start
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 09 - Historical Scripting
What has been used in companies
Customization files (profile)
Environment files (settings)
Backups
Some aliases
Why so little ?
It's the saddest part of systems evolution
It is little used due to fear of change
Fear of ignorance
Fear of having to learn
Fear of architectures
Ignorance of its advantages, it only takes time to do it
In Corte Inglés ... "In systems it is not programmed"
At Mapfre... "They did not want to use the architectures"
At Telefónica... "They only saw disadvantages"
Advocate the use of scripting...it's the only way
Current trends are towards this
It's sad, but it's reality
It is a path that we must change
Scripting must be given radical importance to manage systems
Because its advantages are endless
Lesson 10 - Yaml doesn't kill it
A language designed for humans is born (yaml)
A language appears to manage cloud (hcl)
Changing scripts to configuration
Specific tools by large manufacturers
More general tools for clouds
Declarative Programming
The rest of the parameters are recovered from the supplier
Minimal file example for kubernetes ( pod )
Smarter example (deployment)
Aws ec2 example (hcl)
Everything will work with scripts
Because doing things online means spending a lot of time,
apart from possible human errors
All new products can be adapted to your needs and your architecture
Lesson 11 - Unix
Variables and aliases
Problems that Commands can give us
Difference between scripts and functions
Beginning of Architecture
Practical orders
Adjust outputs (cut)
Change outputs (tr)
Change outputs and files (sed)
Let's get to the architecture
Lesson 12 - Variables and Aliases
Differences between variables and aliases
Differences in execution
Alias runs things
What is the environment? What is exported?
Environment is an area of the shell where objects are known.
If it is exported it is known in the child environments
Not everything can be exported
Exporting variables ( export )
A scripting architecture cannot use other environments
Because aliases are practically essential
Everything has to be with the point
Variables are defined at runtime
Lesson 13 - Commands
Know if the Commands ( which ) exist
Know what we have in the environment ( set | env )
Know the defined aliases ( aliases )
command escape (using the escape bar "\ ")
remove aliases (unalias)
It's a scripting course... scripting on unix
and Unix is wonderful
Lesson 14 - Scripts vs Functions
How to charge them
How to invoke them
Peculiarities
A script will always exist, it does not depend on the environment
but it is located at a specific point in the system
Backwards (cd -)
A function if it depends on the environment
It will work from any system path
In order to use a scripting architecture you have to use functions
Scripts never appear in the environment information
Both scripts and functions can receive parameters
Parameters are received with dollar ( $ )
If we change a function we have to reload it
When changes are made to the architecture, it will have to be reloaded
Architecture is made with functions and aliases
Scripts are a way to load our architecture,
but for unix scripting they are not practical
Lesson 15 - Architecture I
It has finally arrived !!
An architecture never ends
Generations may even pass
Software, when done well, never ends
Version and date information ( date )
Everything has to be in the environment. Everything is loaded with the dot (.)
Some special functions are the "list" type, they inform us of what is there
We just planted the seed
you have to water it... you have to add spices
You have to make it grow as practical as possible and make it grow pretty
that adapts to each of the projects and companies in the world
Lesson 16 - Architecture II
We are going to have fun
A course should be fun
End of a string ( basename )
Rest of string ( dirname )
It is easy to manage the prompt with unix architectures
When using a PS1 with functions, they are continuously interpreted
The screen is ours, don't let the prompt steal it from us
problems loading files via current paths
A common foundation is required
A place where the scripts are executed and it is always the same
Lesson 17 - Architecture III
We apply "magic" again
It now works from anywhere
Because we start from a common base
Always start from a common path for lists and scripts
Escape sequences in vi (esc:)
All lists have ARQ
Quick file search (ff)
Recursive copy without permissions (cf)
The colors are in the architecture (tput)
Date with composition ( date )
More colorful feature list
We already have the pot planted (architecture)
Need to make it grow
But you already know that it will grow
We know it works
We know it runs from anywhere
Lesson 18 - Practical orders : cut
Adjust outputs (cut)
Change outputs (tr)
Change outputs (sed)
Cut by position ( cut -c )
Cut by delimiter ( cut -d -f )
Clear screen (clear)
Order history
Friend/enemy of administrators
History cut ( h8b = history | cut -c8- )
History more powerful ( h8 = h8b | grep )
Clearing history ( history -c )
Cut at the head / above (head)
Cut at the tail / below (tail)
File format with separators (csv)
Get the system ips (ip a)
Function loading demo
Way to load the architecture in a script
Redirect to null device ( &> /dev/null )
If we want to use the architecture in a script we have to load it previously
Errors are solved, thought about, analyzed
they are being resolved and little by little this is growing
My goal is to show that everything is architecture
and that the protagonists are you
Lesson 19 - Cut - Architecture
I am going to take advantage of each chapter that we see to improve the architecture
and adapting it to the idea of practicality that I want to convey to you
An architecture must be practical and beautiful and we are going to work along those lines.
Anagram is added to the architecture
Function to obtain domain ( getdom )
Architecture load alias (A)
Information aliases ( i )
Ways to debug scripts (trial/error)
You don't have to put all the information
Architecture should be practical and beautiful
Current path (pwd)
It's easy to reload the architecture
It's easy to see the changes
It's easy to evolve
Lesson 20 - Practical Orders: tr
Changing texts in sentences is not done with tr
Change letters with tr
Change from lowercase to uppercase (tr)
Character change by tab with tr ( \t )
Character change by line break with tr ( \n )
Lesson 21 - Tr - Architecture - reflection
We review architectural evolution so far
It is radical that there is a common basis
We already have the perspective of how it has evolved
Conversion to uppercase (mayus)
This is the architectural idea
We have a base that we already understand and we are adding parts
This chapter has helped us not to get lost
Documentation is very important
Document things well and little by little the plant "grows"
Lesson 22 - Practical orders: thirst
Change one word for another (sed s/A/B/g)
Sed advanced/smart - delimiter setting (sed s;A;B;g)
Thirst now is wonderful
adjustment with double bar - sed does not interpret it correctly
changing texts in files (sed)
Lesson 23 - Thirst - architecture
We will try not to mix information from new commands
with architectural changes
To minimize complexity so that no one gets lost
Settings solution with formatting function
New variable for lists (ARQ_L)
Examples with sed (change_file function)
Ease of remembering thirst
Knowledge of something that we know works (that has worked before)
Prepend "z" to stack files/folders in outputs
This is unix scripting...change...A...i
Write as little as possible
Reuse everything and have the information in one place
Lesson 24 - Current Events
Version manager (git)
Architecture platform (terraform)
Container orchestrator (kubernetes)
Amazon cloud (aws)
Microsoft cloud (azure)
Google Cloud (Gcloud)
Economic cloud (Digital Ocean)
Lesson 25 - Git
It is the most important product that has appeared in computing in the last 30 years.
It has allowed variants to appear to do things and now, either it is done well or it disappears.
It's version control
We have some documents/code/images and we don't want them to be lost
We version it... like 1.0
We make changes and want to return to the saved version
We recover the version and everything is the same as before it was lost
It is a local version control
Everything you do with Git is on your computer
Git ecosystem (git flow)
Github is a place where you can find any free program in the world
It is a Microsoft platform where any person/company/organization can upload code
anyone who wants, without paying for it and available to everyone
Gitlab is a github setup for generating pipelines
Github is free unless they are private projects
Gitlab is only free for small projects
Gitlab is a way for things to run themselves
The idea is that you create a version, gitlab notices the change
and automatically deploy that version
Github actions is an adjustment of the gitlab philosophy to github
Git is the "good" Microsoft
By creating Git Microsoft has revolutionized all projects in the world
Microsoft is very good and has many very good things and one of the best things it has is git
Bill Gates changed his story and is now donating millions of dollars to charitable causes
By creating Visual Studio Code he has revolutionized all the editors in the world
Lesson 26 - Git Flow
Git flow:
1. It starts from a main branch
2. A new branch is created locally (checkout)
3. You make changes
4. You upload those changes ( push )
5. Then you have to go to Github to make a merge request
The format of creating things, doing a merge, changing it in a loop is what is called
a pipeline
Other manufacturers such as CircleCI or Jenkins are other alternatives for pipelines
THE basis of any development, of any architecture, is that the changes are uploaded to github
architectures are uploaded to github
developments are uploaded github
We are making free software succeed without paying
May it be the basis of the evolution of humanity in 2023
Git is a friend and github is another friend
Lesson 27 - Use Git
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 28 - Git Arq
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 29 - Cloud - The Cloud
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 30 - Terraform
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 31 - Terraform Use / Flow
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 32 - Terraform Arq
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 33 - Kubernetes
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 34 - Kubernetes Use / Flow
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 35 - Kubernetes Arq
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 36 - Aws
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 37 - Aws Use
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 38 - Aws Arq
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 39 - Azure
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 40 - Azure Use
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 41 - Azure Arq
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 42 - Google Cloud
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 43 - Gcloud Use
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 44 - Gcloud Arq
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 45 - Digital Ocean
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 46 - DOcean Use
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 47 - DOcean Arq
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 48 - Very useful (MyBest)
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 49 - CoN - Agile Recoil
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 50 - g - Search (super grep)
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 51 - f2 - extension filter
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 52 - ren - renamer
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 53 - rep - replacer
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 54 - ch - route changer
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 55 - iPath - Intelligent Path
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 56 - Systems
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 57 - Windows
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 58 - Linux
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 59 - Mac
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 60 - Android
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 61 - Passage to the cloud
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 62 - Aws
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 63 - Azure
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 64 - Google Cloud
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 65 - Digital Ocean
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Lesson 66 - Git
This is the description of your project. Provide a brief description to explain the context and background of your work. Click “Edit Text” or double-click the box to begin.
Lesson 67 - End of the fun? Revolution !! #scriptingunix
Automation
Important Information | Pretty
Structure
Historical Scripting
Current scripting status
Saga: SUC 2.0...2025
Multi Language Course - You will be able to do it in any language
Clouds:
-Ali Cloud
CI/CD:
Jenkins
New Utilisimas (MyBest 2.0):
- Function II
- Process and Space
- Cut extension (ecut and scut)
- exists file (pending to create)
- pretty counters (pending to create)
- error echoes & output echoes --> E O ---> Make sure function outputs | mistake
-UP function
- is_number
- exist (exist file | ...) - exist_folder
- svgtopng
- flagtomp3