Standardredigeraren som följer med operativsystemet Linux/UNIX kallas vi (visuell redaktör). Med vi editor kan vi redigera en befintlig fil eller skapa en ny fil från början. vi kan också använda denna editor för att bara läsa en textfil. Den avancerade versionen av vi-redigeraren är därför att redaktör.
Innehållsförteckning
- Hur man öppnar VI Editor
- Driftlägen i vi-redigeraren
- Linux vi kommandon och exempel
- Flytta inom en fil (navigering) i Vi Editor
- Kontrollkommando (rullning) i vi Editor
- Infoga och ersätta text i Vi Editor
- Ta bort tecken och rader i Vi Editor
- Kopiera och klistra in i Vi-redigeraren i Linux
- Spara och avsluta i Vi Editor i Linux
- Söka och ersätta i (ex-läge) i Vi Editor (Linux)
- Blockera raderingskommandon i (x-läge) i Vi Editor
- Blockera kopieringskommandot i (x-läge) i Vi Editor
- Blockera flyttande kommandon i (x-läge) i Vi Editor
Hur man öppnar VI Editor
För att öppna vi-redigerare behöver vi bara skriva kommandot som nämns nedan.
vi [file_name]>
Här, [file_name] = detta är filnamnet vi vill skapa eller öppna den befintliga filen.
Exempel 1 : Skapar en ny fil med `file_name` = geeksforgeeks
vi geeksforgeeks>
för att skapa fil använde vi vi geeksforgeeks
Som vi kan se har vi skapat en ny fil geeksforgeeks in vi editor, som inte har något innehåll i den.
Exempel 2: Öppna en redan existerande fil med `file_name` = jayesh
vi jayesh>
Öppnade redan existerande fil med vi jayesh
Som vi kan se har vi öppnat ett filnamn = Jayesh, som redan fanns i vi-redigeraren.
Driftlägen i vi-redigeraren
Det finns tre driftsätt i vi:

Här är tre driftslägen på vi-redigeraren
Vi Kommandoläge:
När vi startar är den i kommandoläge. Det här läget är där vi tolkar alla tecken vi skriver som kommandon och visar dem därför inte i fönstret. Det här läget låter oss gå igenom en fil och ta bort, kopiera eller klistra in en textbit. Gå in i kommandoläge från något annat läge, kräver att du trycker på [Esc] nyckel. Om vi trycker på [Esc] när vi redan är i kommandoläge, kommer vi att pipa eller blinka på skärmen.
Vi infogar läge:
Detta läge gör att du kan infoga text i filen. Allt som skrivs i det här läget tolkas som indata och slutligen läggs det i filen. Vi startar alltid i kommandoläge. För att skriva in text måste du vara i infogningsläge. För att komma i infogningsläge skriver du helt enkelt i. För att komma ur infogningsläge, tryck på Esc-tangenten, vilket försätter dig tillbaka till kommandoläge.
Vi Last Line Mode (Escape Mode):
Linjeläge anropas genom att skriva ett kolon [:], medan vi är i kommandoläge. Markören hoppar till den sista raden på skärmen och vi väntar på ett kommando. Detta läge låter dig utföra uppgifter som att spara filer och utföra kommandon.
Linux vi kommandon och exempel
OBS: vi-redigeraren i Linux är skiftlägeskänslig.
Hur man infogar i vi-editor i Linux:
För att komma in i infogningsläge i vi-redigeraren i Linux behöver vi bara trycka på `i` på vårt tangentbord och vi kommer att vara i infogningsläge. vi kan bara börja skriva in vårt innehåll. (Se skärmdumpen nedan).
nbsp

öppnade en fil och tryckte på `i` för att skriva innehåll
Flytta inom en fil (navigering) i Vi Editor:
För att flytta runt i en fil utan att påverka text måste vara i kommandoläge (tryck på Esc två gånger). Här är några av kommandona som kan användas för att flytta runt en karaktär åt gången.
| Kommandon | Beskrivning |
|---|---|
| `k` | Flyttar markören upp en rad. |
| 'j'. | Flyttar markören en rad nedåt. |
| `h` | Flyttar markören till vänster en-teckens position. |
| `l` | Flyttar markören till höger en-teckens position. |
| `0` | Placerar markören i början av raden. |
| `$` | Placerar markören i slutet av raden. |
| `W` | Placerar markören till nästa ord. |
| 'B'. | Placerar markören till tidigare arbete. |
| `(` | Placerar markören till början av aktuell mening. |
| `)` | Placerar markören till början av nästa mening. |
| `H` | Flytta till toppen av skärmen. |
| `nH` | Flyttar till n:e raden från toppen av skärmen. |
| 'M'. | Flytta till mitten av skärmen. |
| 'L'. | Flytta till botten av skärmen. |
| `nL` | Flyttar till n:e raden från botten av skärmen. |
| Kolon följt av en nummerposition | Markören på radnumret representeras av siffran efter kolon. Till exempel placerar :10 markören på rad 10. |
Kontrollkommando (rullning) i vi Editor:
Det finns följande användbara kommandon som kan användas tillsammans med kontrollen Nyckel. Dessa kommandon är användbara för att spara tid genom att snabbt navigera i en fil utan att rulla manuellt.
| Kommando | Beskrivning |
|---|---|
| CTRL+d | flyttar skärmen ned en halv sida. |
| CTRL+f | flyttar skärmen ned en hel sida. |
| CTRL+u | flyttar skärmen upp en halv sida. |
| CTRL+b | flyttar skärmen uppåt med en hel sida. |
| CTRL+e | flyttar skärmen upp en rad. |
| CTRL+y | flyttar skärmen ned en rad. |
| CTRL+I | rita om skärmen. |
Infoga och ersätta text i Vi Editor :
För att redigera filen måste vi vara i infogningsläget. Det finns många sätt att gå in i infogningsläge från kommandoläget.
| Kommando | Beskrivning |
|---|---|
| i | Infogar text före den aktuella markörpositionen |
| a | Infoga text efter aktuell markörposition |
| A | Infoga text i slutet av aktuell rad |
| O | Skapar en ny rad för textinmatning under markörens plats och växlar till infogningsläge. |
| O | Skapar en ny rad för textinmatning ovanför markörens plats och växlar till infogningsläge. |
| s | Ersätter ett tecken under markören med valfritt antal tecken och växlar till infogningsläge. |
| R | Skriver över text från markören till höger, utan att växla till infogningsläge. |
Ta bort tecken och rader i Vi Editor:
Här är listan över viktiga kommandon som kan användas för att radera tecken och rader i en öppnad fil.
| Kommando | Beskrivning |
|---|---|
| `X` ( Versal) | Tar bort tecknet före markörens plats. |
| `x` ( Små bokstäver) | Tar bort tecknet vid markörens plats. |
| 'Dw' | Tar bort från den aktuella markörpositionen till nästa ord |
| `d^` | Raderar från aktuell markörposition till början av raden. |
| `d$` | Raderar från aktuell markörposition till slutet av raden. |
| `Dd` | Raderar raden som markören står på. |
Kopiera och klistra in i Vi-redigeraren i Linux:
Kopiera rader eller ord från en plats och klistra in dem på en annan plats med hjälp av följande kommandon.
| Kommandon | Beskrivning |
|---|---|
| Ååå | Kopierar den aktuella raden. |
| 9 åå | Yank nuvarande linje och 9 linjer nedan. |
| sid | Placerar den kopierade texten efter markören. |
| P | Placera den ryckta texten före markören. |
Spara och avsluta i Vi Editor i Linux:
Behöver trycka [Esc] tangent följt av kolon (:) innan du skriver följande kommandon:
| Kommandon | Beskrivning |
|---|---|
| q | Sluta |
| q! | Avsluta utan att spara ändringar, dvs kassera ändringar. |
| r [filnamn] | Läs data från filen [file_name] |
| wq | Skriv och avsluta (spara och avsluta). |
| I | Skriv till filen som heter [file_name] (spara som). |
| I! | Skriv över till filen som heter [filnamn] (spara som kraftfullt). |
| !cmd | Kör skalkommandon och återgår till kommandoläge. |
Söka och ersätta i (ex-läge) i Vi Editor (Linux):
vi har också kraftfulla sök- och ersättningsmöjligheter. Den formella syntaxen för sökning är:
:s/string>
Anta till exempel att vi vill söka efter text efter strängen geeksforgeeks Skriv följande och tryck ENTER:
java trim sträng
:s/geeksforgeeks>
Inmatning:

:s/sträng
Produktion: att hitta den första matchningen för geeksforgeeks i text kommer då att markeras.

geeksforgeeks i text kommer då att markeras.
Syntaxen för att ersätta en sträng med en annan sträng på den aktuella raden är:
:s/pattern/replace/>
Här representerar mönstret den gamla strängen och ersätt den nya strängen. Till exempel, för att ersätta varje förekomst av ordet nördar på en rad med geeksforgeeks skriv:
:s/geeksforgeeks/gfg/>
Inmatning:

:s/geeksforgeeks/gfg/
Produktion:

Produktion:
Syntaxen för att ersätta varje förekomst av en sträng i hela texten är liknande. Den enda skillnaden är tillägget av en % framför s:et:
:%s/pattern/replace/>
Att alltså upprepa det föregående exemplet för hela texten istället för bara för en enda rad skulle vara:
:%s/gfg/geeksforgeeks/>
Blockera raderingskommandon i (x-läge) i Vi Editor:
måste trycka på ESC och sedan kommer kommandon att följas av kolon (:).
| Kommando | Beskrivning |
|---|---|
| :1d | radera rad 1. |
| :1,5d | raderar raderna från 1 till 5. |
| :10,$d | raderar rader från 10:e raden till den sista i filen. ($ betyder sista raden i filen). |
| :.,$d | raderar rader från nuvarande rad till sista rad. (. betyder den nuvarande raden). |
| :.-3,.d | raderar raderna från nuvarande rad och över 2 rader (Raderar 3 rader inklusive markörraden). |
| :.,.+4d | raderar raderna från nuvarande markörrad följt av 3 rader (totalt 3 rader). |
| :16 | raderar filens 16 rad. |
Blockera kopieringskommando i (x-läge) i Vi Editor:
måste trycka på ESC och sedan kommer kommandon att följas av kolon (:).
| Kommando | Beskrivning |
|---|---|
| :1,5 co 10 | kopierar raderna från 1 till 5 efter den 10:e raden. |
| :1,$ co $ | kopierar raderna från 1 till sista raden efter sista raden. |
| :.,.+5 co 8 | kopierar rader från nuvarande till 5 rader efter 8:e raden. |
| :-3,. co 10 | kopierar raderna från nuvarande markörrad över 3 rader efter 10:e raden. |
Blockera flyttande kommandon i (x-läge) i Vi Editor:
måste trycka på ESC och sedan kommer kommandon att följas av kolon (:).
| Kommando | Beskrivning |
|---|---|
| :1,5 för 9 | flyttar rad från 1 till 5 efter 9:e raden. |
| :1,$ för $ | flyttar rader från 1 till $ efter sista raden. |
| :.,.+5 för 10 | flyttar rad från nuvarande rad och nästa 5 rader efter 10:e raden och framåt. |
| :.-3,. för 10 | flyttar nuvarande rad och över 3 rader efter 10:e raden. |
Grundläggande vi Kommando och arbete – Vanliga frågor
Vad är skillnaden mellan vi och vim editor?
Vi är den ursprungliga textredigeraren som skapades 1976, medan Vim (Vi Improved) är en förbättrad version av Vi som släpptes 1991. Vim erbjuder ytterligare funktioner och funktionalitet jämfört med Vi, såsom syntaxmarkering och musstöd.
Hur söker man efter ett ord i vi editor?
För att söka efter ett ord i vi-editorn måste du först se till att du är i kommandoläge. Sedan
- skriv kommandot '/searchterm' och tryck på enter.
- Detta kommer att söka efter den första förekomsten av 'sökterm' i dokumentet.
- För att hitta nästa förekomst av ordet, skriv kommandot 'n'.
Hur kan du ta bort en rad i vi-editorn?
Gå till kommandoläge (tryck på ESC) och tryck sedan på ` dd`. Detta kommer att radera hela raden där vår markör är där.
Vad är syftet med kommandoläget i vi editor?
Kommandoläget i vi-editorn utför kommandon och navigerar genom vårt dokument eller innehåll i filen. I det här läget kan du flytta markören, radera text, söka efter text och spara dokumentet.
Slutsats
Vi editor är en kraftfull och allmänt använd textredigerare i UNIX och Linux operativsystem. Det låter oss skapa, redigera och hantera textfiler. Vim är den avancerade versionen av vi editor. Det finns tre lägen i vi: kommandoläge, sista radläge och infogningsläge. Vi har också diskuterat många alternativ i ovanstående sammanhang. Sammantaget kan vi säga att det är ett kraftfullt verktyg och det är användbart för både nybörjare och erfarna användare.