Bash-Fu | Bash/Shell Scripting

Índice del video completo.



ÍNDICE

  • 0:01:18 - shebang
  • 0:04:32 - comments
  • 0:06:12 - interpretation mechanism
  • 0:08:05 - conventions and variables
  • 0:15:35 - status code
  • 0:16:21 - double vs single quotes
    • 0:17:08 - variables expansion
    • 0:18:03 - handling internal quotes
    • 0:19:47 - command substitution
    • 0:20:00 - history expansion
  • 0:20:59 - subshell
  • 0:28:07 - grouping commands
  • 0:35:08 - scripts arguments
  • 0:25:32 - data types
  • 0:39:33 - wildcards and pattern matching
    • 0:39:36 - wildcard global
    • 0:41:47 - wildcard simple
    • 0:42:43 - character class or charset
  • 0:45:28 - parameter expansion with operators
    • 0:45:40 - string length
    • 0:46:01 - substring replacement
    • 0:47:19 - string concatenation
    • 0:47:39 - uppercase conversion
    • 0:48:20 - lowercase conversion
    • 0:48:47 - character substitution
    • 0:49:12 - remove spaces
    • 0:50:00 - find position of character
    • 0:50:17 - temporary default value expansion
    • 0:50:56 - permanent default value assignment
    • 0:51:21 - alternative value expansion
    • 0:52:01 - error message on unset
    • 0:52:34 - pattern removal
  • 0:53:38 - let’s echo - HackerRank
  • 0:58:20 - line continuation
  • 1:00:06 - cronjobs
  • 1:09:33 - redirect output
  • 1:11:23 - operators in bash
  • 1:13:51 - read command
  • 1:20:16 - personalized echo - HackerRank
  • 1:21:31 - arithmetic operators
  • 1:21:57 - arithmetic expansion and arithmetic evaluator
  • 1:25:23 - random numbers
  • 1:25:42 - let command
  • 1:26:29 - expr command
  • 1:27:37 - bc command
  • 1:29:08 - awk math operators
  • 1:30:40 - the world of numbers - HackerRank
  • 1:32:14 - conditionals and evaluators
  • 1:36:55 - if -else if-elif-else
  • 1:42:39 - strings operators
  • 1:48:02 - logic operator
  • 1:50:41 - integer operators
  • 1:52:19 - file operators
  • 1:55:17 - relational operators and arithmetic evaluation
  • 1:56:06 - tips arithmetic evaluation
  • 2:00:49 - arithmetic operators and arithmetic evaluation
  • 2:09:26 - comparative conditionals evaluators
  • 2:11:56 - arithmetic operators - HackerRank
  • 2:14:06 - regular expressions
  • 2:14:38 - wildcards and grouping operators
  • 2:15:37 - metacharacters and repetitors
  • 2:16:25 - anchors
  • 2:16:41 - charsets
  • 2:17:10 - grep command
  • 2:20:13 - BASH_REMATCH
  • 2:21:18 - match operator
  • 2:22:18 - regex 101
  • 2:25:13 - cut command - HackerRank
  • 2:41:58 - head command - HackerRank
  • 2:48:51 - tail command - HackerRank
  • 2:51:00 - tr command - HackerRank
  • 2:56:44 - getting started with conditionals - HackerRank
  • 2:58:55 - comparing numbers - HackerRank
  • 3:01:09 - more on conditionals - HackerRank
  • 3:03:40 - switch or selector
  • 3:06:29 - case charset or pattern
  • 3:07:52 - case multiple
  • 3:09:16 - case regex
  • 3:10:19 - case wildcard
  • 3:11:35 - case with text processing
  • 3:12:41 - sort command - HackerRank
  • 3:19:59 - uniq command - HackerRank
  • 3:27:53 - grep command - HackerRank
  • 3:37:20 - paste command - HackerRank
  • 3:43:35 - sed command - HackerRank
  • 3:52:50 - awk command - HackerRank
  • 3:58:48 - for loop
  • 4:00:41 - for with seq
  • 4:01:45 - for c-style
  • 4:03:31 - for wildcards
  • 4:03:54 - for command substitution
  • 4:05:03 - break
  • 4:05:18 - continue
  • 4:06:34 - nested loop
  • 4:08:35 - while loop
  • 4:10:41 - while user input
  • 4:11:21 - while read file
  • 4:12:23 - infinite while loop
  • 4:14:27 - until loop
  • 4:15:37 - until user input
  • 4:16:09 - infinite until loop
  • 4:17:07 - word splitting
  • 4:18:24 - descriptors
  • 4:21:49 - while read descriptors
  • 4:24:42 - copy descriptors
  • 4:27:22 - restore descriptors
  • 4:30:09 - looping with numbers - HackerRank
  • 4:31:12 - looping and skipping - HackerRank
  • 4:34:21 - compute the average - HackerRank
  • 4:37:38 - arrays indexed
  • 4:38:24 - declare arrays
  • 4:38:42 - view all elements arrays
  • 4:39:21 - modify arrays
  • 4:40:30 - modify arrays (advance)
  • 4:41:00 - index array
  • 4:41:17 - length array
  • 4:41:32 - arrays elements access
  • 4:41:58 - remove array element
  • 4:42:14 - reindex array
  • 4:42:44 - concatenate array
  • 4:43:02 - dynamic array assignment
  • 4:43:31 - declare array from arg
  • 4:43:50 - string to array
  • 4:45:08 - arrays operators
  • 4:45:32 - arrays loop
  • 4:45:55 - convert file to array
  • 4:46:49 - array command injection
  • 4:48:36 - array associative
  • 4:48:42 - declare arrays associative
  • 4:49:24 - unset arrays and variables
  • 4:49:56 - modify arrays associative
  • 4:50:25 - length array associative
  • 4:50:34 - arrays associative elements access
  • 4:50:52 - arrays associative loop
  • 4:51:39 - count the number of elements in array - HackerRank
  • 4:54:30 - read in array - HackerRank
  • 4:55:58 - display an element of an array - HackerRank
  • 4:57:07 - concatenate an array with itself - HackerRank
  • 5:00:25 - slicing
    • 5:00:59 - string slicing
    • 5:03:43 - index array slicing
    • 5:04:40 - associative array slicing
    • 5:05:09 - positional parameter slicing
  • 5:07:04 - slicing an array - HackerRank
  • 5:08:39 - remove the first capital letter from each element - HackerRank
  • 5:11:06 - filter an array with patterns - HackerRank
  • 5:16:09 - vulnerabilities
    • 5:16:48 - pattern-matching “injection”
    • 5:20:56 - white collar eval bash [[-v]] code injection
    • 5:25:21 - white collar eval bash [[ $var -eq 42 ]] runs arbitrary code too
  • 5:31:07 - declare command
  • 5:34:22 - functions
  • 5:36:41 - global vs local variables
  • 5:39:18 - export command
  • 5:40:13 - functions arg
  • 5:41:42 - return and exit
  • 5:43:51 - return values
  • 5:45:51 - sudo preserve user
  • 5:48:47 - catching signal
  • 5:49:58 - trap command
  • 5:54:08 - safe and debugging mode
    • 5:54:11 - set -e
    • 5:55:01 - set -u
    • 5:55:46 - set -o pipefail
    • 5:58:16 - set -x
    • 5:59:21 - set -v
    • 5:59:33 - debugging with redirection
  • 5:59:38 - colours in bash
    • 5:59:54 - ANSI colors
    • 6:00:54 - echo -e
    • 6:02:15 - tput colors
    • 6:04:20 - echo vs printf
  • 6:05:06 - basic port scan
  • 6:18:43 - getopts
  • 6:59:28 - shift command
  • 7:13:03 - advance port scan
  • 8:24:37 - “threads in bash” concurrency and parallelism
    • 8:26:46 - concurrency with & and wait
    • 8:27:24 - parallel execution with xargs
    • 8:29:46 - parallel execution with parallel
    • 8:31:18 - managing concurrency with & wait and wait -n

🎉 ¡Felicitaciones, estás aprendiendo Bash Scripting! 🎉