Install HAProxy on Ubuntu 18.04
apt-get install software-properties-common add-apt-repository ppa:vbernat/haproxy-2.0
apt-get update apt-get install haproxy=2.0.\*
References
https://haproxy.debian.net/
apt-get install software-properties-common add-apt-repository ppa:vbernat/haproxy-2.0
apt-get update apt-get install haproxy=2.0.\*
References
https://haproxy.debian.net/
Black 0;30 Dark Gray 1;30 Red 0;31 Light Red 1;31 Green 0;32 Light Green 1;32 Brown/Orange 0;33 Yellow 1;33 Blue 0;34 Light Blue 1;34 Purple 0;35 Light Purple 1;35 Cyan 0;36 Light Cyan 1;36 Light Gray 0;37 White 1;37
RED='\033[0;31m' NC='\033[0m' # No Color
echo -e "I ${RED}love${NC} Stack Overflow"
References
https://stackoverflow.com/questions/5947742/how-to-change-the-output-color-of-echo-in-linux
https://misc.flogisoft.com/bash/tip_colors_and_formatting
tput setaf 1; echo "this is red text"
The count of colors available to tput is given by tput colors
To see the basic 8 colors (as used by setf in urxvt terminal and setaf in xterm terminal):
Color #define Value RGB black COLOR_BLACK 0 0, 0, 0 red COLOR_RED 1 max,0,0 green COLOR_GREEN 2 0,max,0 yellow COLOR_YELLOW 3 max,max,0 blue COLOR_BLUE 4 0,0,max magenta COLOR_MAGENTA 5 max,0,max cyan COLOR_CYAN 6 0,max,max white COLOR_WHITE 7 max,max,max
To print all 256 colors in the terminal, try the following one-liner:
for c in {0..255}; do tput setaf $c; tput setaf $c | cat -v; echo =$c; done
References
https://stackoverflow.com/questions/5947742/how-to-change-the-output-color-of-echo-in-linux
https://unix.stackexchange.com/questions/269077/tput-setaf-color-table-how-to-determine-color-codes
sudo certbot --apache -d example.com -d www.example.com
#!/bin/bash
# Basic function
print_something () {
echo Hello I am a function
}
print_something
print_something
Passing Arguments
#!/bin/bash
# Passing arguments to a function
print_something () {
echo Hello $1
}
print_something Mars
print_something Jupiter
Return Values
#!/bin/bash
# Setting a return status for a function
print_something () {
echo Hello $1
return 5
}
print_something Mars
print_something Jupiter
echo The previous function has a return value of $?
Passing Arguments
#!/bin/bash
# Passing arguments to a function
print_something () {
echo Hello $1
}
print_something Mars
print_something Jupiter
Return Values
#!/bin/bash
# Setting a return status for a function
print_something () {
echo Hello $1
return 5
}
print_something Mars
print_something Jupiter
echo The previous function has a return value of $?
the variable $? contains the return status of the previously run command or function.
References
https://ryanstutorials.net/bash-scripting-tutorial/bash-functions.php
Basic If Statements
#!/bin/bash # Basic if statement if [ $1 -gt 100 ] then echo Hey that\'s a large number. pwd fi date
If Else
#!/bin/bash # else example if [ $# -eq 1 ] then nl $1 else nl /dev/stdin fi
If Elif Else
#!/bin/bash # elif statements if [ $1 -ge 18 ] then echo You may go to the party. elif [ $2 == 'yes' ] then echo You may go to the party but be back before midnight. else echo You may not go to the party. fi
Boolean Operations
#!/bin/bash # and example if [ -r $1 ] && [ -s $1 ] then echo This file is useful. fi
#!/bin/bash # or example if [ $USER == 'bob' ] || [ $USER == 'andy' ] then ls -alh else ls fi
Multiple logical operators, ((A || B) && C)
use double brackets
if [[ ($A -eq 0 || $B -ne 0) && $C -eq 0 ]]; then …
References
https://ryanstutorials.net/bash-scripting-tutorial/bash-if-statements.php
https://unix.stackexchange.com/questions/290146/multiple-logical-operators-a-b-c-and-syntax-error-near-unexpected-t
Ask the User for Input
#!/bin/bash # Ask the user for their name echo Hello, who am I talking to? read varname echo It\'s nice to meet you $varname
More variables
#!/bin/bash # Demonstrate how read actually works echo What cars do you like? read car1 car2 car3 echo Your first car was: $car1 echo Your second car was: $car2 echo Your third car was: $car3
More with Read
#!/bin/bash # Ask the user for login details read -p 'Username: ' uservar read -sp 'Password: ' passvar echo echo Thankyou $uservar we now have your login details
-pallows you to specify a prompt and-smakes the input silent
References
https://ryanstutorials.net/bash-scripting-tutorial/bash-input.php
sourceis a bash shell built-in command that executes the content of the file passed as argument, in the current shell
Syntax
. filename [arguments] source filename [arguments]
References
https://superuser.com/questions/46139/what-does-source-do
mkdir -p foo
mkdir -p foo/bar/baz
References
https://stackoverflow.com/questions/793858/how-to-mkdir-only-if-a-dir-does-not-already-exist