Skip to main content

Learn Linux vi the easy way

Open Linux terminal window.

Type "vi filename.mytxt" to start a new session.
(filename extension is not important but for readability purposes only)

Inside vi window, press "insert" key on the keyboard or press letter "i".

If  insert is not press you cannot start typing on vi editor.

"Enter" key is used to insert new line.

Press "Esc" key once. And use arrow keys (up/down or left/right) to navigate.

Or use any of the keys below:

While pressing specified keys below, you will not be able to see the characters on the screen but it will just execute the process.

What I mean, if you press "dd"; dd will not be type or seen on the terminal screen window.

But once the last character is pressed, the line will be deleted.

Press home or end key to navigate to the beginning or end of the line.

To copy a line, press "yy" and press "p" to paste the line.

Press "cc" to cut a line, "p" to paste the line

Press "dd" to delete a line. (be careful with this it will delete the entire line)

To delete a single character on the line press "delete" key.

Press "insert" or i to start typing again.

If need to go back to the terminal window while on vi editor, press "ctrl z" and type "fg" to go back to the editor.

Once done typing and need to save or close the editor.

Press "Escape" key again.

Press ":" colon key on the keyboard to enter commands.

 :q! - will quit vi and discard any changes

 :wq - will write or save data and quit vi (if no file name specified during vi launch, vi will ask for filename)
 :wq my_filename - save the data and use filename specified and quit vi

 :w  - will save any changes and remain on vi editor

 :q  - quit or exit vi editor

 :/string_to_search - search the vi editor for the specified pattern or string

 :w my_filename - equivalent to save as on windows, if don't want to overwrite the current file

Well, those are the basic commands to get the job done on vi.

To select all lines on vi editor and copy or yanked all lines, press ":" then "%"  then "y"

%  - select all
y   - yank line/s

Open a new vi, then press "p" just press letter "p", no need to press ":p"

If you have been using  Microsoft Word, then you might be familiar with "Ctrl+Home" or "Ctrl+End" which is quite useful to bring the cursor to the beginning or at the end of the file.

In Vi, to get the effect of "Ctrl+Home". Type, ":0" it's colon and zero. Don't include the quotes.

Ctrl+End is, ":$" it is colon and dollar sign.

If only editing a long line, to browse from beginning to the end. Press "Shift 0" (shift zero) or Press "Shift $".

To do a quick search in Vi,type:
:/string_to_search (forward Search)
:?string_to_search (search backward)

n    Repeat search forward
N    Repeat search backward

If vi gets half of your life, then you need to explore further.

Hope this helps someone, who just need some basic use on Linux vi editor.



Linux Android App cheat sheet:

Catholic Rosary Guide  for Android:


Popular posts from this blog

Copy a single file using robocopy

Copy a single file using robocopy from a local folder to a shared folder on the network.
A simple rule of thumb before any disaster strike, don't interchange the source and the destination.

If source and destination is mistakenly reverse, files might get overwritten. To avoid any loss of data do a test with a dummy file to ensure things work perfectly.
Robocopy [source][destination]   [file to be copied]
robocopy c:\local_c_folder  \\PC_network\shared_folder   file_to_be_copied_xx.txt
The command will be completed successfully provided the network access right has no issues.

Robocopy works quite good on large files. A simple copy or xcopy command will also work but the speed might vary.

However, if the file (ex. an ISO file) and is more than 4GB and the filesystem  of the thumbdrive or the storage is FAT system, then robocopy or any methods of copying will not work. Since FAT has a file size limitation of less than 3GB.

Robocopy is free it can be accessed from command line. No ne…

WMIC List printers

WMIC comes handy if you are a command line junkie.

To list printers via command line type:

wmic printer get name  = = = this will list all the printers installed on a workstation

To list the printer name and the port name of the printers, type this command:

wmic printer get name, portname

Type this command below to list the printer drivers:

wmic printer get name, drivername

To get the device id:

wmic printer get name, deviceid

You can deploy a batch file startup script to check which printer is installed on the computers and redirect the output to a shared folder.

PowerShell can also be used in conjunction with WMIC command:

To see more WMIC tips, click on WMIC label below.


Linux Android App cheat sheet:

WMIC get computer name

WMIC get computer model, manufacturer, computer name and  username.
WMIC is a command-line tool and that can generate information about computer model, its manufacturer, its username and other informations depending on the parameters provided.
Why would you need a command line tool if there’s a GUI to check?
If you have 20 or 100 computers, or even more. It’s quite a big task just checking the GUI to check the computer model and username.
If you have remote computers, you need to delegate someone in the remote office or location to check.
Or you can just write a batch file or script to automate the task.
Here’s the code below on how get computer model, manufacturer and the username.
Open an elevated command prompt and type:
wmic computersystem get "Model","Manufacturer", "Name", "UserName"
Just copy and paste the code above, the word “computersystem” does not need to be change to a computer name.
A sample output below will be generated if the co…