Module Title: dgt_bash03 – Invoking Shell and VIM
Module Description:
“dgt_bash03 – Invoking Shell and VIM” covers how the Linux shell is started and configured and how the VIM text editor works. The module is intended for beginners, intermediate users, and anyone who wants to study shell invocation and VIM in more depth.
Why study the shell and an editor in an academy where you never type commands? Because the AI agent you instruct lives in exactly this environment: it opens shells, sets variables, sources startup files and edits configuration with editors like VIM. If you know what an interactive login shell reads at startup, or what a VIM substitution really changes, you can tell the machine precisely what you want (“make this variable available only to login shells”), read the commands and the .vimrc it proposes, and notice at once when it is about to edit the wrong file.
Module Overview:
Module 1: Invoking the Shell on Linux
This module covers shell environments in Linux. You’ll learn about the different shells available (such as Bash, Zsh, and Fish) and how a shell session is started, either directly from the terminal or through login prompts.
-
Starting the Shell: Understand what it means to “invoke” the shell, including the differences between interactive and non-interactive shell sessions.
-
Launching with Parameters: Learn how commands are executed with parameters. We’ll cover examples like setting environment variables at startup (
export VAR=value) and using command-line options to alter shell behavior, so you can recognize them in the machine’s output. -
Practical Examples: Natural-language exercises in which you ask the machine to start shells, apply common parameters, and configure your environment for your workflow, then verify what changed and why.
Module 2: Using VIM
VIM (Vi IMproved) is a modal text editor widely used on Linux systems. This module introduces you to the fundamentals of VIM, so that you understand how files are edited directly from the command line and can follow, check, and steer the edits the machine performs.
-
Understanding Modes: Learn how VIM operates in different modes (normal, insert, and command mode) and when and why it switches between them.
-
Basic Navigation and Commands: Learn the essential navigation commands (e.g.,
h,j,k,l), text editing techniques, and search-and-replace, so you can read them and describe edits with precision. -
Customizing VIM: Explore how VIM is personalized through configuration files (.vimrc) and extended with plugins, and have the machine build a configuration from your description that you then review.
-
Advanced Features: Learn about more advanced features such as macros, buffers, and registers, and understand them well enough to judge the bulk edits the machine proposes.
Learning Outcomes:
By the end of this module, participants will be able to:
– Explain how a Linux shell is invoked and configured, and instruct the machine in natural language to start and customize shell environments with the right parameters.
– Read and verify the VIM commands, substitutions and .vimrc settings the machine produces, and describe file edits precisely enough to get them right the first time.
– Apply this knowledge in interactive exercises and real-world examples, reviewing and correcting the machine’s work.
Target Audience:
This module is intended for:
– Newcomers to Linux who want to understand how the shell really works.
– Developers who want to supervise command-line work and text editing with confidence.
– System administrators who want to delegate shell tasks to an AI agent while staying in full control of the result.
The students can push their exercises to the Academy DevOps & SRE Git project. For this module, create a folder with your username as its name in the following subfolder: https://github.com/Garanti-Del-Talento/gdt_academy
