J
Jarret W. Buse
Guest
Linux+: Linux Shell 25 – vi Editor (Part 2)
In the previous article (Part 1), I covered the options and insertion commands for the vi editor. In this article, I will cover search abilities within the editor.
To perform a search, use the following commands:
In the previous article (Part 1), I covered the options and insertion commands for the vi editor. In this article, I will cover search abilities within the editor.
To perform a search, use the following commands:
- /string – searches forward in the file for the value in place of string
- ?string - searches backwards in the file for the value in place of string
- /\<string\> - searches for string for an exact match, not part of another word. For example, ^<p\> would find “p = 2” but not the word “parts”
- n – used to find the next occurrence of the search string
- N – searches for the previous occurrence of the search string
- fx – moves the cursor to the next occurrence of the letter 'x' on the same line
- #fx - moves the cursor to the # occurrence of the letter 'x' on the same line
- ; - goes to the next occurrence in the line
- Fx – moves the cursor to the previous occurrence of the letter 'x' on the same line
- #Fx - moves the cursor to the previous # occurrence of the letter 'x' on the same line
- tx – moves the cursor to character before the next occurrence of the letter 'x' on the same line
- #tx - moves the cursor to character before the next # occurrence of the letter 'x' on the same line
- Tx – moves the cursor to character before the previous occurrence of the letter 'x' on the same line
- #Tx - moves the cursor to character before the previous # occurrence of the letter 'x' on the same line
- . - a period is used to match a single character
- ^ - beginning of the line
- ^A – finds the beginning of the line which starts with an 'A' (the letter can be changed to other letters)
- $ - matches the end of a line
- [abc] – matches a word which contains any of the letters 'a', 'b' or 'c' (the letters can be changed to other letters, even adding or reducing the number)
- \ - turns off the special meaning of the following character. For example, “\$” will match a dollar sign and not the end of a line
- \# - matches a number 0-9
- * - wildcard to represent 0 or more characters
- + - wildcard to represent 1 or more characters
- ? - wildcard to represent 0 or 1 characters
- string1|string2 – match either string1 or string2
- a.z – matches any word that starts with an 'a' followed by any character and the letter 'z' (the letter can be changed to other letters)
- ^.$ - the carat (^) represents the beginning of the line, the period (.) is a single character, and the dollar sign ($) is the end of the line. The search string shows the search for a line which contains one character
- ctrl+g – lists file name, number of lines, current position of cursor in file
- :set list – shows end of line (eol) and tabs
- :set nolist - hides end of line (eol) and tabs
- :args – shows the command-line arguments used when starting vi
- ZZ – saves changes and quits vi
- :wq – saves changes and quits vi
- :w – writes file to disk, but does not quit
- :w! - saves the file overriding user permissions
- :w filename – writes changes to a file named filename and does not quit
- :q! - quits without saving and changes since last save
- :qa – quits and closes all open files in vi
- :e filename – opens a new vi session with filename. If the file does not exist, it is created, otherwise the file is edited
- vi
- ~/.exrc
- vim
- ~/.exrc
- ~/.vimrc
- ~/.gvimrc
- ~/.vim/