Gebruikershulpmiddelen

Site-hulpmiddelen


linux_terminal:editor_vi

Terminal Tekst Editor Vi

Terminal Tekst Editor Vi = tekst aanpassen in de terminal.

Waarom zou je dat willen ? Omdat het kan ! En omdat het oh zo handig is. Als je het eenmaal door hebt.

Met vi kun je:

  • terminal commando's invoeren en aanpassen
  • een tekst bestand maken en aanpassen
  • dit met root rechten doen

zie ook Linux Terminal - Bash Shell

Hoe doe je dat ?

Ga het bekijken en laat het je voor doen, en zoek een youtube demo !

Zoek op het internet en/of in youtube op :

  • linux vi editor tutorial
  • linux vi editor handleiding
  • linux vi editor cheat sheet

Vi Editor Handleidingen voor beginners

Vi Editor - Basis

Ter info : letters zijn tekst en commando's. Het ingeven van een commando ? Eerst de ESCAPE toets indrukken. Je komt zo in command mode. Je kunt nu commando letters toepassen, totdat je er een doet, die je terugbrengt in tekst mode. Om een volgende commando te geven druk je eerst weer op de escape toets

Maak een nieuw bestand :

vi mijnbestand.txt

je zit meteen in tekst invoeg mode

begin met tekst typen. Ook de enter doet het gewoon. Tiep er een eind op los.

Druk de escape toets in

Het bestand opslaan met het commando :w

Het bestand opslaan en afsluiten met het commando :wq

Het bestand zonder opslaan afsluiten met het commando :q!

Het bestand bekijken met : cat mijnbestand.txt

Het bestand weer openen met : vi mijnbestand.txt

je zit alweer meteen in tekst invoeg mode

Druk de escape toets in

Gebruik de commando's h,j,k,l om door de tekst te stappen, regel voor regel, letter voor letter. Ontdek zelf wat welke letter doet.

Gebruik de 0 en de $ om naar het begin en het eind van een regel te springen

Gebruik de w en de b om een woord vooruit of een woord terug te springen

type een A in (het append op het einde van de regel commando), hiermee spring je naar het einde van de regel en je kunt meteen weer beginnen met tekst typen. Met een Enter begin je een nieuwe regel.

Dan druk de escape toets in

wandel naar een andere plek in de tekst (zie boven)

Gebruik de 0 om naar het begin van een regel te springen

Naar regel 1 : Naar de laatste regel

Naar het begin midden of einde van het scherm : H M of L

Gebruik dd om de hele regel te deleten.

Gebruik de k om een regel omhoog te stappen

Gebruik yy om de regel te kopiereen

Loop met de k of de l omhoog of omlaag

Gebruik de p om de gekopieerde regel op deze plaats te plakken

Dan tiep weer een i (het insert commando), en je kunt weer tekst in typen.

Het bestand afsluiten met het commando :wq

Enzovoort

Bij twijfel het bestand afsluiten met het commando :q!

Vi Editor - Waarschuwing

Wat moet je in Vi NIET DOEN ? :

  • met de muis omhoog en omlaag scrollen

De muis gebruiken mag wel, maar alleen voor :

  • het selecteren van tekst, mbv de linker muis
  • het plakken van tekst, met de middelste muis. Wel eerst Vi in insert mode zetten ! (met ESC i)

Vi Editor Handleidingen

Vi Editor Spiekbladen

Vi Editor en systeembeheer bestanden

Voorbeeld rondom het aanpassen van /etc/hostname, /etc/hosts en /etc/fstab:

Voor het aanpassen van de configuratie bestanden in /etc moet je root rechten hebben.

Met root rechten in de terminal wel oppassen. Dus wat vi betreft : oefenen met onbelangrijke bestanden.

Zie Linux admin user : root

Het onderstaande dus alleen doen als je de Vi Editor basisvaardigheden in de vingers hebt !

Nogmaals : het ingeven van een commando ? Eerst de ESCAPE toets indrukken. Je komt zo in command mode. Je kunt nu commando letters toepassen, totdat je er een doet, die je terugbrengt in tekst mode. Het volgende commando gaat dan weer vooraf door de escape toets

Het bestand afsluiten met het commando :wq
Bij twijfel het bestand afsluiten met het commando :q!

Voordat je een bestand aanpast is het verstandig een backup te maken

# cp /etc/fstab /etc/fstab_20230326
# cp /etc/hosts /etc/hosts_20230326
su - root
whoami
pwd
cd /etc

# de basis vaardigheden loslaten om de gewenste wijziging uit te voeren 

vi /etc/hosts
vi /etc/fstab
exit

whoami
pwd

Vi volgens Duck AI

TTo edit text in the Linux terminal using vi (or vim, its improved version), follow these steps:

### 1. Open a File with vi

vi filename.txt ``` - Replace `filename.txt` with your file name. - If the file doesn’t exist, vi will create it when you save.

### 2. Vi Modes Vi has three main modes: - Command Mode (default) – For navigation and commands. - Insert Mode – For typing text. - Visual Mode – For selecting text.

### 3. Basic Commands

#### Enter Insert Mode (to type text) - Press `i` to insert before the cursor. - Press `a` to insert after the cursor. - Press `o` to insert a new line below. - Press `O` to insert a new line above.

#### Exit Insert Mode - Press `Esc` to return to Command Mode.

#### Save & Quit - `:wq` → Save and quit. - `:q!` → Quit without saving (force quit).

#### Navigation (Command Mode) - `h` → Left - `j` → Down - `k` → Up - `l` → Right - `gg` → Go to the start of the file. - `G` → Go to the end of the file. - `:10` → Go to line 10.

#### Editing Text - `x` → Delete a character. - `dd` → Delete a line. - `yy` → Copy (yank) a line. - `p` → Paste after cursor. - `u` → Undo last change. - `Ctrl + r` → Redo.

### 4. Example Workflow 1. Open a file:

 
 vi example.txt

2. Press `i` to enter Insert Mode. 3. Type your text. 4. Press `Esc` to exit Insert Mode. 5. Save and quit:

 
 :wq

### 5. Advanced Tips - Search: Type `/search_term` and press `Enter`. - Replace: `:s/old/new/g` (replace all occurrences in a line). - Multiple Files: Open multiple files with `vi file1.txt file2.txt`.

### 6. Exit Without Saving If you made changes but don’t want to save:

:q! ```

Vi has a steep learning curve, but mastering it makes you much faster in the terminal! 🚀

Would you like a cheat sheet or more advanced commands?

Here’s a comprehensive Vi/Vim cheat sheet for efficient text editing in the Linux terminal.

## 📌 Vi/Vim Cheat Sheet

### 🔹 Modes

Key Action
—–——–
`i` Enter Insert Mode (before cursor)
`a` Enter Insert Mode (after cursor)
`I` Insert at the start of the line
`A` Insert at the end of the line
`o` Insert a new line below
`O` Insert a new line above
`Esc` Return to Command Mode
`v` Enter Visual Mode (select text)
`V` Enter Visual Line Mode (select lines)
`Ctrl + v` Enter Visual Block Mode (select blocks)

### 🔹 Navigation (Command Mode)

Key Action
—–——–
`h` Move left
`j` Move down
`k` Move up
`l` Move right
`w` Move forward by word
`b` Move backward by word
`0` Go to start of line
`$` Go to end of line
`gg` Go to start of file
`G` Go to end of file
`:10` Go to line 10
`Ctrl + f` Page down
`Ctrl + b` Page up

### 🔹 Editing (Command Mode)

Key Action
—–——–
`x` Delete character under cursor
`dd` Delete (cut) current line
`yy` Copy (yank) current line
`p` Paste after cursor
`P` Paste before cursor
`u` Undo last change
`Ctrl + r` Redo
`r` Replace single character
`R` Overwrite mode (replace multiple chars)
`~` Toggle case of character
`»` Indent line right
`«` Unindent line left

### 🔹 Saving & Exiting

Command Action
—————–
`:w` Save file
`:wq` Save & quit
`:q!` Quit without saving
`:w newfile.txt` Save as new file
`:e filename` Open another file
`:split filename` Split window horizontally
`:vsplit filename` Split window vertically

### 🔹 Search & Replace

Command Action
—————–
`/search_term` Search forward
`?search_term` Search backward
`n` Go to next match
`N` Go to previous match
`:%s/old/new/g` Replace all `old` with `new` in file
`:%s/old/new/gc` Replace with confirmation
`:noh` Clear search highlights

### 🔹 Advanced Commands

Command Action
—————–
`:set number` Show line numbers
`:set nonumber` Hide line numbers
`:set hlsearch` Highlight search matches
`:set nohlsearch` Disable highlight
`:!command` Run shell command (e.g., `:!ls`)
`:r !command` Insert command output (e.g., `:r !date`)
`:tabnew` Open new tab
`gt` Next tab
`gT` Previous tab

### 🔹 Macros (Recording & Playing)

Command Action
—————–
`qq` Start recording macro in register `q`
`q` Stop recording
`@q` Play macro from register `q`
`5@q` Play macro 5 times

### 🔹 Buffers & Windows

Command Action
—————–
`:buffers` List open buffers
`:buffer 2` Switch to buffer 2
`:bn` Next buffer
`:bp` Previous buffer
`:bd` Close current buffer
`:sp` Split window horizontally
`:vsp` Split window vertically
`Ctrl + w` + `h/j/k/l` Navigate between windows

### 🔹 File Operations

Command Action
—————–
`:e!` Reload file (discard changes)
`:wq` Save & quit
`:q!` Force quit
`:r file.txt` Insert contents of `file.txt`
`:w » log.txt` Append to `log.txt`

### 🔹 Visual Mode (Selection)

Key Action
—–——–
`v` Character-wise selection
`V` Line-wise selection
`Ctrl + v` Block-wise selection
`d` Delete selected text
`y` Yank (copy) selected text
`>` Indent selected text
`<` Unindent selected text

### 🔹 Useful Plugins (if using Vim)

Plugin Purpose
——–———
NERDTree File explorer
fzf.vim Fuzzy file finder
vim-airline Status bar
YouCompleteMe Autocompletion
vim-surround Easily edit “surroundings” (quotes, brackets)

### 🔹 Quick TipsUse `Ctrl + [` instead of `Esc` (faster). ✅ `Ctrl + d` in Insert Mode → Auto-complete word. ✅ `Ctrl + n` in Insert Mode → Auto-complete from dictionary. ✅ `:set paste` → Prevent auto-indent when pasting. ✅ `:set nopaste` → Disable paste mode.

### 📚 Further Learning - Vim Adventures (game to learn Vim) → [https://vim-adventures.com/](https://vim-adventures.com/) - Vim Golf (practice Vim commands) → [https://www.vimgolf.com/](https://www.vimgolf.com/) - Vim Cheat Sheet (PDF) → [https://vim.rtorr.com/](https://vim.rtorr.com/)

Would you like a customized cheat sheet for a specific task (e.g., Python editing, log file analysis)? Let me know!

linux_terminal/editor_vi.txt · Laatst gewijzigd: 2026_0724_23:02 door Hans Bollen

Tenzij anders vermeld valt de inhoud van deze wiki onder de volgende licentie: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki