Skip to main content

The four things you must be able to do in Vim

A list of the four tasks that any Linux user should be able to accomplish when using the Vim text editor.
Image
Four things you must know how to do with vim

Photo by RF._.studio from Pexels

We all know how vital text editing is when managing Linux systems. The nano text editor has become more critical over the years. However, many sysadmins prefer the Vim text editor, and it is still the default on many systems.

This is the first article in a series that covers some essential Linux tools. My second article discusses: "The four things you must be able to do in nano." It is a companion article to this one.

When I taught Linux classes regularly, I found that many students were intimidated and overwhelmed by Vim's power and flexibility. I told these students to start with the basics and gain confidence by accomplishing the following four tasks:

  • Create/open a file
  • Edit the file
  • Save changes
  • Exit the file

This article is aimed at new Linux users.

Vim modes

Before we start on the specifics, I'll quickly review the Vim modes. The way I explain modes is this: Depending on the mode, the keyboard responds differently. If you're in Command mode, i issues the command to move to Insert mode. If you're in Insert mode, i enters a lowercase i character into the text.

List of modes:

  • Command mode - issues commands to Vim (use Esc to get to Command mode)
  • Execute mode - executes commands in Vim (use colon : to get to Execute mode)
  • Insert mode - inserts text in a file (use i to get to Insert mode)

Note: There are many ways of entering Insert mode. I suggest the i character here because it's easy.

[ Readers also like: Vim: Basic and intermediate commands ]

Create or open a file

To create a new file by using Vim, type vim /path/filename. For example, to create a new file named "distributions" in my Documents directory, I type the following:

# vim ~/Documents/distributions

The new file opens in Command mode.

I use the same process to open an existing file named "demo" in the Documents directory:

# vim ~/Documents/demo

Edit a file

Vim starts in Command mode, so I need to switch to Insert mode to add or edit content. There are many ways of switching to Insert mode. Most of them center around changing modes and positioning the cursor somewhere specific in the file. When you're just starting out, it's easier to simply remember i for Insert mode and manage the cursor position by using the arrow keys.

I'm in my distributions file, so I select i and begin to enter content:

Image
File with Vim's Insert mode highlighted

Save a file

Now that I have added or modified content in my file, it's time to save my changes. I must leave Insert mode, so I press Esc to return to Command mode. I enter :w to save (write) my changes:

Image
File with Vim's :w command highlighted

Exit Vim

To close the Vim text editor, I ensure that I'm in Command mode (press Esc if you aren't sure), and then select :q (quit):

Image
File with Vim's :q command highlighted

Combine commands

Those of you with a little Vim experience realize that I could have combined the write and exit steps. To simultaneously save changes and exit Vim, enter the following :wq (write and then quit). Here's an example:

Image
File with Vim's :wq command highlighted

If you want to exit Vim without saving your changes to the file, you use the :q! key combination, like this:

Image
File with Vim's :q! command highlighted

[ Want to test your sysadmin skills? Take a skills assessment today. ] 

Wrap up

There is a lot more to Vim than these simple steps. However, too many new users are intimidated and overwhelmed. Start slow with these four essential functions. If you prefer nano, then use it. At least if you connect to a system that does not have nano installed, you can accomplish some basic tasks using Vim.

Once you master these easy Vim tasks, you can investigate additional functions to become more efficient. Personally, I use Vim whenever possible on my Linux installations.

Check out these related articles on Enable Sysadmin

Image
vi vs. emacs
The lowly and now middle-aged vi editor is still a favorite among *nix system administrators and remains an essential tool for command-line file creation and editing.
Topics:   Linux   Linux Administration   Text editors  
Author’s photo

Damon Garn

Damon Garn runs Cogspinner Coaction, LLC, a technical writing and IT project company based in Colorado Springs, CO. He has been a technical instructor for nearly 20 years, with a focus on Windows Server, Linux, and security. More about me

Related Content

OUR BEST CONTENT, DELIVERED TO YOUR INBOX