VI Editor med kommandon i Linux/Unix Tutorial

⚡ Smart sammanfattning

vi-editorn är den klassiska, universellt tillgängliga textredigeraren för Linux och Unix, som arbetar helt via tangentbordet i två lägen: ett kommandoläge för åtgärder och ett infogningsläge för ty.ping text.

  • 📝 Vad det är: vi-redigeraren levereras med nästan alla Linux- och Unix-system och beter sig på samma sätt över plattformar och distributioner.
  • ⌨️ Två lägen: Kommandoläget kör åtgärder som kopiera, ta bort och spara, medan infogningsläget är för typing text.
  • 🚀 Sjösättning: Skriv vi följt av ett filnamn för att öppna en befintlig fil eller skapa en ny.
  • ✏️ redigering: Enbokstavskommandon som i, a, dd och x infogar, lägger till, tar bort rader och tar bort tecken.
  • 💾 Sparande: Från kommandoläge sparar :w, :wq sparar och avslutas, och :q! avslutas utan att spara.
  • 🤖 AI-hjälp: AI-assistenter och GitHub Copilot kan förklara vi-kommandon och föreslå redigeringar medan du lär dig.

vi-editorkommandon och kommando- och insertlägen i Linux och Unix

VI-editorn är textredigeraren du kommer att stöta på i nästan vilken Linux eller Unix-maskin, så att lära sig dess tangentbordsdrivna arbetsflöde är en färdighet som överförs överallt. Den här guiden förklarar dess två lägen, dess redigeringskommandon och hur man sparar och avslutar en fil.

Vad är vi-editorn?

vi-editorn är den mest populära och klassiska textredigeraren i Linux-familjen. Nedan följer några av anledningarna till att den är en flitigt använd editor:

  • Den är tillgänglig i nästan alla Linux-distributioner.
  • Det fungerar på samma sätt på olika plattformar och distributioner.
  • Det är användarvänligt, så miljontals Linux-användare förlitar sig på det för sina redigeringsbehov.

Numera finns det avancerade versioner av vi-editorn tillgängliga, och den mest populära är VIM, vilket står för Vi Improved. Några av de andra är Elvis, Nvi, Nano och Vile. Det är klokt att lära sig vi eftersom det är funktionsrikt och erbjuder oändliga möjligheter att redigera en fil.

vi-redigeraren Operationslägen

För att arbeta med vi-editorn behöver du förstå dess driftlägen. De kan delas in i två huvuddelar: kommandoläge och infogningsläge. Skärmdumpen nedan visar vi-editorn öppen i en Linux-terminal.

vi-redigeraren öppnas i ett Linux-terminalfönster

vi-kommandoläge

  • vi-editorn öppnas i det här läget och den förstår bara kommandon.
  • I det här läget kan du flytta markören och klippa ut, kopiera och klistra in text.
  • Det här läget sparar även de ändringar du har gjort i filen.
  • Kommandon är skiftlägeskänsliga, så du bör använda rätt versal.

vi Infoga-läge

  • Det här läget är för att infoga text i filen.
  • Du kan växla till infogningsläge från kommandoläge genom att trycka på 'i' på tangentbordet.
  • När du är i infogningsläge tas valfri tangent som indata för den fil du arbetar med.
  • För att återgå till kommandoläge och spara de ändringar du har gjort, tryck på Esc-tangenten.

Hur man använder vi editor

För att starta vi-editorn, öppna terminalen (CLI) och skriv:

vi <filename_NEW> or <filename_EXISTING>

Om du anger en befintlig fil öppnas den av redigeraren så att du kan redigera den. Annars skapas en ny fil. Skärmdumpen nedan visar en ny fil som skapas och redigeras i vi.

Skapa och redigera en ny fil i vi-editorn

VI Redigeringskommandon

Med redigeringskommandona i vi nedan kan du infoga, ta bort och ändra text. Använd dem från kommandoläge.

Kommando BESKRIVNING
i Infoga vid markören (går till infogningsläge)
a Skriv efter markören (går till infogningsläge)
A Skriv i slutet av raden (går till infogningsläge)
ESK Avsluta infogningsläget
u Ångra senaste ändringen
U Ångra alla ändringar på hela raden
o Öppna en ny rad (går till infogningsläge)
dd Radera raden
3dd Ta bort 3 rader
D Radera innehållet på raden efter markören
C Ta bort innehållet på en rad efter markören och infoga ny text. Tryck på ESC-tangenten för att avsluta infogningen.
dw Radera ord
4dw Ta bort 4 ord
cw Byt ord
x Ta bort tecken vid markören
r Byt ut tecken
R Skriv över tecken från markören och framåt
s Ersätt ett tecken under markören och fortsätt infoga
S Ersätt hela raden och börja infoga i början av raden
~ Ändra skiftläge för individuell karaktär

Obs: Du bör vara i kommandoläge för att utföra dessa kommandon. VI-editorn är skiftlägeskänslig, så se till att du skriver kommandona med rätt versaler och versaler. Att trycka på fel kommando kan göra oönskade ändringar i filen. Du kan också gå in i infogningsläge genom att trycka på a, A eller o efter behov.

Flytta inom en fil

Du måste vara i kommandoläge för att kunna navigera inom en fil. Standardnavigeringstangenterna listas nedan, men du kan också använda piltangenterna på tangentbordet.

Kommando BESKRIVNING
k Flytta markören uppåt
j Flytta markören nedåt
h Flytta markören åt vänster
l Flytta markören åt höger

Spara och stänga filen

Du bör vara i kommandoläge för att avsluta redigeraren och spara ändringar i filen. Kommandona nedan beskriver vanliga sätt att spara och avsluta.

Kommando BESKRIVNING
Shift+zz Spara filen och avsluta
:w Spara filen men håll den öppen
Q! Avsluta vi och spara inte ändringarna
: Wq Spara filen och avsluta

Skärmdumpen nedan visar en fil öppen i vi-redigeraren, redo att sparas och stängas.

En fil öppen i vi-editorn redo att sparas och avslutas

Vanliga frågor

Vim står för "Vi Improved" och är en förbättrad version av vi. Den lägger till funktioner som syntaxmarkering, flernivååterställning och omgörning, delade fönster, flikar och ordkomplettering. Det klassiska vi-programmet är tillgängligt på nästan alla Unix-system, vilket är anledningen till att dess kommandon är värda att lära sig.

I kommandoläge, tryck på / följt av texten och Enter för att söka framåt, eller använd ? för att söka bakåt. Tryck på n för att hoppa till nästa matchning och N för att hoppa till föregående. Sökningar är skiftlägeskänsliga om du inte ändrar inställningen.

I kommandoläge kopierar (rycker) yy den aktuella raden och p klistrar in den under markören. Använd ett nummer, till exempel 3yy, för att kopiera flera rader samtidigt. Att ta bort med dd placerar också den borttagna texten på urklipp, så att p kan klistra in den någon annanstans.

Från kommandoläge skriver du :set number (eller :set nu) och trycker på Enter för att visa radnummer längs vänstermarginalen. Kör :set nonumber för att dölja dem igen. Radnummer gör det enklare att hoppa till en specifik rad och att följa felmeddelanden.

Nano är en enklare editor som visar sina genvägar på skärmen och inte behöver några separata lägen, så nybörjare tycker att den är lättillgänglig. VI-editorn har en brantare inlärningskurva men är snabbare för erfarna användare och installeras som standard på fler system, inklusive minimala servrar.

Kör vi -R filename, eller använd kommandot view, för att öppna en fil i skrivskyddat läge. Detta låter dig bläddra och söka säkert utan att av misstag ändra innehållet. Du kan fortfarande tvinga fram en skrivning med :w! om du väljer att spara en redigering.

AI-assistenter kan förklara vad ett okänt vi-kommando gör, översätta en begäran på enkel engelska till rätt tangenttryckningar och felsöka misstag. Maskininlärningsbaserade verktyg kan också föreslå nästa redigering, vilket minskar den branta inlärningskurvan som vi är känt för.

Ja. GitHub Copilot erbjuder ett officiellt plugin för Vim och Neovim som föreslår kod medan du skriver i infogningsläge. Den gör det tangentbordsdrivna arbetsflödet AI-kompletterande, även om du fortfarande accepterar eller avvisar varje förslag själv.

Sammanfatta detta inlägg med: