Slik fjerner Alle linjer som ikke inneholder VIM

Den Vim teksteditor har en kraftig innebygd søk-og-erstatt-funksjonen. Søkefunksjonen finner alle linjene som ikke inneholder en bestemt søkefunksjon og slette dem. Dette er nyttig når du ønsker å finne bare feilmeldinger i et stort loggfil, eller hvis du ønsker å se kun kommentarer i et skript eller program. Søkestreng kan være en streng eller du kan bruke vanlige uttrykk for å søke etter en bestemt kombinasjon av tegn. Du kan også søke etter flere strenger i en fil.

Bruksanvisning

1 Åpne filen du vil redigere i Vim tekst editor.

2 Trykk på "Esc" -tasten på tastaturet for å gå inn i kommandomodus.

3 Skriv inn følgende kommando for å slette alle linjene som ikke inneholder strengen "SEARCH_STRING" i filen:

: G / SEARCH_STRING / d

Erstatt "SEARCH_STRING" med den nøyaktige streng med tegn som du ønsker å søke.

4 Skriv inn følgende kommando for å slette alle linjer som ikke inneholder strengene "streng1" eller "string2" i filen:

: G / string1 \ | streng2 / d

Den "|" tegnet står for ordet "eller". Du kan bytte ut "|" tegnet med "&" tegnet hvis du vil slette alle linjer som inneholder både "streng1" og "streng2".

5 Skriv inn kommandoen ": w" for å lagre endringene i filen.

Hint

  • Et regulært uttrykk kan anvendes i stedet for en nøyaktig søkestrengen. Bruk for eksempel linjen ": g / [0-9] $ /" for å slette noen linjer som ikke inneholder et tall.
  • Tegnet "v" kan brukes i stedet for "g" tegn i begynnelsen av kommandoen.