Learning Linux Shell Scripting [Video]

Learning Linux Shell Scripting [Video]

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 8h 19m | 1.48 GB

Linux shell scripting is a useful tool for programmers and system administrators. It can speed up and automate many tasks, including finding and editing files, editing text, performing advanced searches, downloading data from the web, backing up and archiving data, and transferring files through a network. For Linux administrators, the Linux shell is also a great tool for monitoring system health and deploying updates and software. Learn the basics of Linux shell scripting in this course with Packt trainers Sarath Lakshman and Shantanu Tushar.

Topics include:

  • Printing in the terminal
  • Performing math in the Linux shell
  • Getting and setting dates
  • Working with functions and arguments
  • Reading output
  • Making comparisons
  • Concatenating text
  • Finding, editing, generating, and deleting files
  • Running parallel processes
  • Using regular expressions
  • Downloading webpages
  • Parsing data from a website
  • Finding broken links
  • Backing up and archiving
  • Transferring files and data through the network
  • Monitoring your Linux system
  • Gathering data for system administration
Table of Contents

1 Printing in the terminal
2 Playing with variables and environment variables
3 Function to prepend to environment variables
4 Math with the shell
5 Playing with file description and redirection
6 Arrays and associative arrays
7 Visiting aliases
8 Grabbing information about the terminal
9 Getting and setting dates and delays
10 Debugging the script
11 Functions and arguments
12 Reading the output of a sequence of commands
13 Reading n characters without pressing the return key
14 Running a command until it succeeds
15 Field separators and iterators
16 Comparisons and tests
17 Concatenating with cat
18 Recording and playing back terminal sessions
19 Finding files and file listing
20 Playing with xargs
21 Translating with tr
22 Checksum and verification
23 Cryptographic tools and hashes
24 Sorting unique and duplicates
25 Temporary file naming and random numbers
26 Splitting files and data
27 Slicing filenames based on extension
28 Renaming and moving files in bulk
29 Spell checking and dictionary manipulation
30 Automating interactive input
31 Making commands quicker by running parallel processes
32 Generating files of any size
33 The intersection and set difference (A-B) on text files
34 Finding and deleting duplicate files
35 Working with file permissions, ownership, and the sticky bit
36 Making files immutable
37 Generating blank files in bulk
38 Finding symbolic links and their targets
39 Enumerating file type statistics
40 Using loopback files
41 Finding the difference between files, and patching
42 Using head and tail for printing the last or first ten lines
43 Listing only directories – alternative methods
44 Fast command-line navigation using pushd and popd
45 Counting the number of lines, words, and characters in a file
46 Printing the directory tree
47 Using regular expressions
48 Searching and mining text inside a file with grep
49 Cutting a file column-wise with cut
50 Using sed to perform text replacement
51 Using awk for advanced text processing
52 Finding frequency of words used in a given file
53 Compressing or decompressing JavaScript
54 Merging multiple files as columns
55 Printing the nth word or column in a file or line
56 Printing text between line numbers or patterns
57 Printing lines in the reverse order
58 Parsing email address and URLs from text
59 Removing a sentence in a file containing a word
60 Replacing a pattern with text in all files in a directory
61 Text slicing and parameter operations
62 Downloading from a web page
63 Downloading a web page as plain text
64 A primer on cURL
65 Parsing data from a website
66 Image crawler and downloader
67 Web photo album generator
68 Creating a define utility by using the web backend
69 Finding broken links in a website
70 Tracking changes to a website
71 Posting to a web page and reading response
72 Archiving with tar
73 Archiving with cpio
74 Compressing data with gzip
75 Archiving and compressing with zip
76 Faster archiving with pbzip2
77 Creating filesystems with compression
78 Backup snapshots with rsync
79 Version control-based backup with Git
80 Creating entire disk images using FSArchiver
81 Let us ping
82 Listing all the machines alive on a network
83 Running commands on a remote host with SSH
84 Transferring files through the network
85 Password-less auto-login with SSH
86 Port forwarding and mounting remote drives
87 Network traffic and port analysis
88 Creating arbitrary sockets
89 Monitoring disk usage
90 Calculating the execution time for a command
91 Collecting information about logged-in users, boot logs, and boot failures
92 Listing the top ten CPU-consuming processes in an hour
93 Monitoring command outputs with watch
94 Logging access to files and directories
95 Log file management with logrotate
96 Logging with syslogd
97 Monitoring user logins to find intruders
98 Remote disk usage health monitor
99 Finding out active user hours on a system
100 Measuring and optimizing power usage
101 Monitoring disk activity
102 Checking disks and filesystems for errors
103 Gathering information about processes
104 Killing processes and send or respond to signals
105 Sending messages to user terminals
106 Gathering system information
107 Using -proc for gathering information
108 Scheduling with cron
109 Writing and reading the MySQL database from Bash
110 User administration script
111 Bulk image resizing and format conversion
112 Taking screenshots from the terminal
113 Managing multiple terminals from one