Bash-Fu | Bash/Shell Scripting

Índice del video completo.



ÍNDICE

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

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