Bird
Raised Fist0
Linux CLIscripting~5 mins

vim basics (insert, command, save, quit) in Linux CLI - Commands & Configuration

Choose your learning style10 modes available
Introduction
Vim is a text editor used in the command line to create and edit files. It helps you write and save text quickly without leaving the terminal.
When you need to quickly edit a configuration file on a remote server via SSH.
When you want to write or modify scripts directly in the terminal.
When you want a lightweight editor that works without a graphical interface.
When you need to make quick notes or edits without opening a full desktop editor.
Commands
This command opens the file named example.txt in vim. If the file does not exist, vim creates a new empty file with that name.
Terminal
vim example.txt
Expected OutputExpected
No output (command runs silently)
Pressing 'i' switches vim into insert mode, allowing you to type and edit text like a normal editor.
Terminal
i
Expected OutputExpected
No output (command runs silently)
Type this text while in insert mode to add content to the file.
Terminal
Hello, this is a test.
Expected OutputExpected
No output (command runs silently)
Press the Escape key to exit insert mode and return to command mode where you can run commands like save or quit.
Terminal
Esc
Expected OutputExpected
No output (command runs silently)
Type ':w' and press Enter to save (write) the changes you made to the file without quitting vim.
Terminal
:w
Expected OutputExpected
"example.txt" 1L, 23C written
Type ':q' and press Enter to quit vim if you have no unsaved changes.
Terminal
:q
Expected OutputExpected
No output (command runs silently)
Type ':wq' and press Enter to save your changes and then quit vim in one step.
Terminal
:wq
Expected OutputExpected
No output (command runs silently)
Type ':q!' and press Enter to quit vim without saving any changes you made.
Terminal
:q!
Expected OutputExpected
No output (command runs silently)
Key Concept

If you remember nothing else from vim, remember: press 'i' to start typing, Esc to stop typing, ':w' to save, and ':q' to quit.

Common Mistakes
Trying to type text without pressing 'i' first.
Vim starts in command mode where typing letters runs commands instead of inserting text.
Press 'i' to enter insert mode before typing your text.
Trying to quit with ':q' when there are unsaved changes.
Vim will prevent quitting to avoid losing changes and show a warning.
Use ':wq' to save and quit or ':q!' to quit without saving.
Pressing Esc multiple times thinking it saves the file.
Esc only switches modes; it does not save the file.
After pressing Esc, type ':w' to save your changes.
Summary
Open a file with 'vim filename' to start editing.
Press 'i' to enter insert mode and type your text.
Press Esc to return to command mode.
Use ':w' to save, ':q' to quit, ':wq' to save and quit, and ':q!' to quit without saving.

Practice

(1/5)
1. What key do you press to switch from insert mode to command mode in Vim?
easy
A. Enter
B. Ctrl+C
C. Esc
D. Tab

Solution

  1. Step 1: Understand Vim modes

    Vim has two main modes: insert mode for typing and command mode for commands.
  2. Step 2: Identify the key to switch modes

    Pressing Esc exits insert mode and returns to command mode.
  3. Final Answer:

    Esc -> Option C
  4. Quick Check:

    Esc switches to command mode [OK]
Hint: Press Esc to leave insert mode quickly [OK]
Common Mistakes:
  • Pressing Enter instead of Esc
  • Using Ctrl+C which interrupts
  • Pressing Tab expecting mode change
2. Which of the following is the correct command to save changes in Vim without quitting?
easy
A. :x
B. :q
C. :wq
D. :w

Solution

  1. Step 1: Recall Vim save commands

    In Vim, :w writes (saves) the file without quitting.
  2. Step 2: Differentiate from quit commands

    :q quits, :wq saves and quits, :x also saves and quits but is less common.
  3. Final Answer:

    :w -> Option D
  4. Quick Check:

    :w saves without quitting [OK]
Hint: Use :w to save, :q to quit [OK]
Common Mistakes:
  • Using :q to save
  • Confusing :wq with just save
  • Using :x without knowing it quits
3. You open a file in Vim, press i to insert text, type "Hello", then press Esc and enter :wq. What happens?
medium
A. The text "Hello" is saved and Vim quits
B. The text "Hello" is discarded and Vim quits
C. Vim saves but stays open
D. Vim quits without saving

Solution

  1. Step 1: Insert and exit insert mode

    Pressing i enters insert mode, typing "Hello" adds text, pressing Esc returns to command mode.
  2. Step 2: Use :wq command

    :wq saves the file and quits Vim.
  3. Final Answer:

    The text "Hello" is saved and Vim quits -> Option A
  4. Quick Check:

    :wq saves and quits [OK]
Hint: Use :wq to save and exit Vim [OK]
Common Mistakes:
  • Forgetting to press Esc before :wq
  • Using :q without saving
  • Expecting :wq to only save
4. You typed text in Vim but accidentally typed :q and Vim shows an error "No write since last change". What should you do to quit without saving?
medium
A. :wq
B. :q!
C. :w
D. :exit

Solution

  1. Step 1: Understand the error message

    "No write since last change" means Vim won't quit because changes are unsaved.
  2. Step 2: Use force quit command

    Typing :q! forces Vim to quit without saving changes.
  3. Final Answer:

    :q! -> Option B
  4. Quick Check:

    :q! quits without saving [OK]
Hint: Use :q! to quit without saving changes [OK]
Common Mistakes:
  • Using :q which fails
  • Trying :w to save then quit
  • Typing :exit which is invalid
5. You want to quickly add the line "# TODO" at the start of a file in Vim, save, and quit. Which sequence of keys and commands is correct?
hard
A. Press I, type "# TODO", press Esc, then :wq
B. Press o, type "# TODO", press Esc, then :q
C. Press a, type "# TODO", press Esc, then :w
D. Press i, type "# TODO", press Esc, then :wq

Solution

  1. Step 1: Insert text at start of line

    Pressing I (capital i) enters insert mode at the start of the current line.
  2. Step 2: Type text, exit insert mode, save and quit

    Type "# TODO", press Esc to exit insert mode, then :wq to save and quit.
  3. Final Answer:

    Press I, type "# TODO", Esc, then :wq -> Option A
  4. Quick Check:

    I inserts at line start, :wq saves and quits [OK]
Hint: Use I to insert at line start, then :wq to save and quit [OK]
Common Mistakes:
  • Using i inserts before cursor, not line start
  • Using o inserts new line below
  • Using :q quits without saving
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard