GNU/Linux >> Znalost Linux >  >> Linux

Jak odstranit řádky ve Vim / Vi

Vim nebo jeho předchůdce Vi je předinstalovaný na většině distribucí Linuxu a macOS. Znalost základů Vimu je důležitá, pokud jste správce systému nebo pouze běžný uživatel Linuxu.

Docela často při práci s textovými soubory budete muset odstranit jeden nebo více řádků.

Tento článek ukazuje, jak odstranit řádky ve Vim/Vi.

Smazání řádku #

Příkaz k odstranění řádku ve Vimu je dd .

Níže jsou uvedeny podrobné pokyny k odstranění řádku:

  1. Stiskněte Esc pro přechod do normálního režimu.
  2. Umístěte kurzor na řádek, který chcete smazat.
  3. Zadejte dd a stisknutím klávesy Enter řádek odstraňte.

Stisknutím dd vícenásobné smaže více řádků.

Smazání více řádků #

Chcete-li odstranit více řádků najednou, přidejte před znak dd příkaz s počtem řádků, které mají být odstraněny. Chcete-li například odstranit pět řádků, postupujte takto:

  1. Stiskněte Esc pro přechod do normálního režimu.
  2. Umístěte kurzor na první řádek, který chcete smazat.
  3. Zadejte 5dd a stisknutím klávesy Enter smažte dalších pět řádků.

Smazat řadu řádků #

Syntaxe pro odstranění rozsahu řádků je následující:

:[start],[end]d

Chcete-li například odstranit řádky začínající od 3 do 5, postupujte takto:

  1. Stiskněte Esc pro přechod do normálního režimu.
  2. Zadejte :3,5d a stisknutím klávesy Enter smažte řádky.

K určení rozsahu můžete také použít následující znaky:

  • . (tečka) – aktuální řádek.
  • $ - Poslední řádek.
  • % - Všechny řádky.

Zde je několik příkladů:

  • :.,$d - Od aktuálního řádku do konce souboru.
  • :.,1d - Od aktuálního řádku po začátek souboru.
  • 10,$d - Od 10. řádku do konce souboru.

Smazat všechny řádky #

Chcete-li odstranit všechny řádky, můžete použít buď % symbol, který představuje všechny řádky nebo 1,$ rozsah:

  1. Stiskněte Esc pro přechod do normálního režimu.
  2. Zadejte %d a stisknutím klávesy Enter odstraňte všechny řádky.

Odstranění řádků obsahujících vzor #

Syntaxe pro smazání více řádků na základě konkrétního vzoru je následující:

:g/<pattern>/d

Globální příkaz (g ) říká příkazu delete (d ), chcete-li odstranit všechny řádky obsahující <pattern> .

Chcete-li, aby se řádky neshodovaly se vzorem, přidejte vykřičník (! ) před vzorem:

:g!/<pattern>/d

Vzorem může být doslovná shoda nebo regulární výraz. Níže je několik příkladů:

  • :g/foo/d - Smazat všechny řádky obsahující řetězec „foo“. Odstraní také řádek, kde je „foo“ vloženo do větších slov, jako je „fotbal“.
  • :g!/foo/d - Smažte všechny řádky, které neobsahují řetězec „foo“.
  • :g/^#/d - Odstraňte všechny komentáře ze skriptu Bash. Vzor ^# znamená každý řádek začínající # .
  • :g/^$/d - Odstraňte všechny prázdné řádky. Vzor ^$ odpovídá všem prázdným řádkům.
  • :g/^\s*$/d - Odstraňte všechny prázdné řádky. Na rozdíl od předchozího příkazu to také odstraní prázdné řádky, které mají nula nebo více prázdných znaků (\s* ).

Závěr č.

Ukázali jsme vám, jak odstranit řádky ve Vimu.

Pokud jste ve Vimu noví, navštivte stránku Open Vimsite, kde si můžete Vim procvičit pomocí interaktivního tutoriálu.

Pokud máte nějaké dotazy, neváhejte zanechat komentář.


Linux
  1. Jak odstranit úlohy cron

  2. Jak odstranit službu v Kubernetes

  3. Jak počítat řádky v dokumentu?

  1. Jak nainstalovat Vim (vi) na Windows 10

  2. Jak odstranit všechny řádky souboru ve Vimu

  3. jak používat pylint ve vim

  1. Jak nainstalovat Vim 8.2 na Ubuntu 18.04

  2. Jak nainstalovat Vim 8.2 na CentOS 7

  3. Jak odstranit řádek ve Vim na Linuxu