Find a word in Vim or vi text editor
To search using Vim/vi, for the current word:
- In normal mode, you can search forward or backward.
- One can search forward in vim/vi by pressing
/ and then typing your search pattern/word. - To search backward in vi/vim by pressing
? and then typing your search pattern/word. - Once word found in vim, you can press the
n key to go directly to the next occurrence of the word in backwards. Press theN key to go directly to the opposite direction, i.e. forwards.
Let us see some examples.
Searching for words in vim/vi
Let us open a file named /etc/passwd:
OR
Search for a word named “vivek” in forward direction:
$ vi /etc/passwd
OR
$ vim /etc/passwd
Search for a word named “vivek” in forward direction:
- Press
ESC key - Type
/vivek - Hit
n to search forwards for the next occurrence of word named “vivek”. You can pressN to search backwards.
How to search for a word in backwards in vim/vi
Let us open a file named demo.txt in the current directory:
OR
Search for a word named “bar” in backwards direction:
$ vi demo.txt
OR
$ vim demo.txt
Search for a word named “bar” in backwards direction:
- Press
ESC key - Type
?bar - Hit
N to search backwards for the next occurrence of word named “bar”. You can pressn to search forwards.
How to search for the current word
Say you have a file named data.txt as follows displayed using the cat command:
Sample outputs:
$ cat data.txt
Sample outputs:
192.168.2.254 - default router 192.168.2.253 - wifi 192.168.2.252 - wifi bridge 192.168.2.254 - dns server 192.168.2.30 - backup server 192.168.2.254 - firewall 192.168.2.18 - vm server 192.168.2.203 - RHEL7 192.168.2.254 - dhcp server 192.168.2.200 - SUSE server 192.168.2.201 - FreeBSD nfs server
In normal mode, move the cursor to any word say 254. Press * to search forwards for the next occurrence of word 254, or press # to search backwards:
Search and open file from the CLI
The vi / vim text editor supports running any : command using the following syntax:
To open file and go to function called main(), enter:
Next open file and go to line number 42, enter:
vi +commandHere fileName
vim +LineNumber fileName
vi +/searchTermHere fileName
vi +/LineNumberHere fileName
vim +/LineNumberHere fileName
To open file and go to function called main(), enter:
$ vim +/main filename-here
Next open file and go to line number 42, enter:
$ vim +42 fileName
No comments:
Post a Comment