Det kan vara svårt att redigera textfiler direkt från Linux-terminalen, särskilt om du använder en komplicerad textredigerare som Vi eller Vim. Nybörjare har svårt att linda huvudet runt kommandoradstextredigerare och har ofta svårt att memorera tangentbindningarna som används för att utföra grundläggande operationer.
Även att radera rader i Vi och Vim kan vara ett nervkittlande jobb för nyanlända. Men att använda ett rudimentärt verktyg som en textredigerare behöver inte vara så svårt.
Så här kan du ta bort en eller flera rader från en textfil med hjälp av Vi och Vim.
Hur man tar bort en enstaka rad i Vi/Vim
Det finns ett bättre sätt att ta bort hela rader i Vi och Vim än att spamma Backsteg på tangentbordet.
För att radera en rad i Vi eller Vim, växla till normalt läge först. Om du är i kommandoläge eller infogningsläge kan du växla tillbaka till normalt läge genom att trycka på Fly.
Markera raden som du vill ta bort och tryck sedan dd eller D på tangentbordet. Redaktören tar automatiskt bort hela raden från filen. Observera att Vi- och Vim-kommandon är skiftlägeskänsliga, vilket betyder
d och D identifieras som två separata kommandon.Slår dd eller D flera gånger kommer att radera flera rader en efter en. Nästa rad kommer att markeras automatiskt när den förra raderas.
Relaterad: Hur man använder Vim: En guide till grunderna
Ta bort flera rader i Vi och Vim
Om du tycker att det är obekvämt att upprepade gånger trycka på tangenterna på tangentbordet kan du ta bort flera rader samtidigt genom att justera det ovannämnda kommandot. Istället för att bara trycka dd, kan du ange hur många rader du vill ta bort.
Till exempel att skriva 3dd kommer att ta bort de nästa tre raderna från filen.
Om du vill ta bort rader inom ett specifikt område måste du först växla till kommandoläge (tryck Fly i normalt läge). Använd sedan följande syntax för att skapa ditt eget raderingskommando:
:[start],[slut]d
Till exempel, för att ta bort raderna mellan intervall ett och fem:
:1,5d
Du kan också använda jokertecken i det tidigare nämnda kommandot.
- . (Punkt): Avser den aktuella raden
- $ (dollar): Betecknar slutet på filen
- % (procent): Matchar alla rader i filen
Till exempel:
:.,5d #tar bort rader mellan den aktuella raden och den femte raden.
:.,$d #tar bort alla rader från den aktuella raden till slutet.
:%d #rensar hela filen
Relaterad: Vim Linux Kommandoradsredigerarens fuskblad
Spamma Backspace? Tyvärr, jag använder Vi/Vim
Om du vill bli en Linux-poweranvändare är det riktningen du bör gå mot att lära dig detaljerna i kommandoradsverktygen. På Linux kan du använda olika genvägar och tangentbindningar för att utföra uppgifter som annars skulle ta mycket tid och ansträngning.
För dem som ser fram emot att bemästra Vim finns det goda nyheter. Vim-paketet kommer med Vimtutor, en gratis kommandoradshandledare som hjälper dig att använda Vim till dess verkliga potential.
Att lära sig hur man använder en terminalbaserad textredigerare som Vim kan vara svårt. Men du behöver inte gå igenom med alla dessa problem, inte med Vimtutor.
Läs Nästa
- Linux
- Textredigerare
- Linux-appar
Deepesh är Junior Editor för Linux på MUO. Han skriver informationsguider om Linux i syfte att ge alla nykomlingar en lycklig upplevelse. Inte säker på filmer, men om du vill prata om teknik så är han din kille. På fritiden kan du hitta honom läsa böcker, lyssna på olika musikgenrer eller spela sin gitarr.
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!
Klicka här för att prenumerera