Subscribe to the feed
Linux 

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:

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:

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):

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:

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:

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.


About the author

Damon Garn owns Cogspinner Coaction, LLC, a technical writing, editing, and IT project company based in Colorado Springs, CO. Damon authored many CompTIA Official Instructor and Student Guides (Linux+, Cloud+, Cloud Essentials+, Server+) and developed a broad library of interactive, scored labs. He regularly contributes to Enable Sysadmin, SearchNetworking, and CompTIA article repositories. Damon has 20 years of experience as a technical trainer covering Linux, Windows Server, and security content. He is a former sysadmin for US Figure Skating. He lives in Colorado Springs with his family and is a writer, musician, and amateur genealogist.

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

Browse by channel

automation icon

Automation

The latest on IT automation for tech, teams, and environments

AI icon

Artificial intelligence

Updates on the platforms that free customers to run AI workloads anywhere

open hybrid cloud icon

Open hybrid cloud

Explore how we build a more flexible future with hybrid cloud

security icon

Security

The latest on how we reduce risks across environments and technologies

edge icon

Edge computing

Updates on the platforms that simplify operations at the edge

Infrastructure icon

Infrastructure

The latest on the world’s leading enterprise Linux platform

application development icon

Applications

Inside our solutions to the toughest application challenges

Original series icon

Original shows

Entertaining stories from the makers and leaders in enterprise tech