Vyhledávání na webu

LFCS #2: Jak nainstalovat a používat Vi/Vim v Linuxu


Před několika měsíci spustila Linux Foundation certifikaci LFCS (Linux Foundation Certified Sysadmin), aby pomohla jednotlivcům z celého světa ověřit, že jsou schopni provádět základní až středně pokročilé úkoly správy systému na systémech Linux.

Úlohy správy systému Linux zahrnují řešení problémů a údržbu z první ruky a inteligentní rozhodování, abyste věděli, kdy je čas upozornit na problémy nadřízené týmy podpory.

Série se bude jmenovat Příprava na LFCS (Linux Foundation Certified Sysadmin) části 1 až 33 a pokryje následující témata:

Part 1

Jak používat příkaz „Sed“ k manipulaci se soubory v Linuxu

Part 2

Jak nainstalovat a používat Vi/Vim v Linuxu

Part 3

Jak komprimovat soubory a adresáře a najít soubory v Linuxu

Part 4

Rozdělení úložných zařízení, formátování souborových systémů a konfigurace odkládacího oddílu

Part 5

Připojit/odpojit místní a síťové (Samba a NFS) souborové systémy v Linuxu

Part 6

Sestavení oddílů jako zařízení RAID – Vytváření a správa záloh systému

Part 7

Správa procesů a služeb spouštění systému (SysVinit, Systemd a Upstart

Part 8

Jak spravovat uživatele a skupiny, oprávnění k souborům a sudo přístup

Part 9

Linux Package Management s Yum, RPM, Apt, Dpkg, Aptitude a Zypper

Part 10

Naučte se základní skriptování Shell a odstraňování problémů se souborovým systémem

Part 11

Jak spravovat a vytvářet LVM pomocí příkazů vgcreate, lvcreate a lvextend

Part 12

Jak prozkoumat Linux pomocí nainstalované dokumentace nápovědy a nástrojů

Part 13

Jak konfigurovat a řešit problémy s Grand Unified Bootloader (GRUB)

Part 14

Monitorujte využití zdrojů linuxových procesů a nastavujte limity procesů na základě jednotlivých uživatelů

Part 15

Jak nastavit nebo upravit parametry běhu jádra v systémech Linux

Part 16

Implementace povinného řízení přístupu pomocí SELinux nebo AppArmor v Linuxu

Part 17

Jak nastavit seznamy řízení přístupu (ACL) a diskové kvóty pro uživatele a skupiny

Part 18

Instalace síťových služeb a konfigurace automatického spouštění při spouštění

Part 19

Dokonalý průvodce nastavením FTP serveru pro anonymní přihlášení

Part 20

Nastavte základní server DNS s rekurzivním ukládáním do mezipaměti a nakonfigurujte zóny pro doménu

Part 21

Jak nainstalovat, zabezpečit a vyladit výkon databázového serveru MariaDB

Part 22

Jak nainstalovat a nakonfigurovat server NFS pro sdílení systému souborů

Part 23

Jak nastavit Apache s virtuálním hostingem založeným na názvu s certifikátem SSL

Part 24

Jak nastavit Iptables Firewall pro povolení vzdáleného přístupu ke službám v Linuxu

Part 25

Jak proměnit Linux ve směrovač, který zvládne provoz staticky a dynamicky

Part 26

Jak nastavit šifrované systémy souborů a vyměnit je pomocí nástroje Cryptsetup Tool

Part 27

Jak sledovat využití systému, výpadky a odstraňování problémů se servery Linux

Part 28

Jak nastavit síťové úložiště pro instalaci nebo aktualizaci balíčků

Part 29

Jak auditovat výkon sítě, zabezpečení a odstraňování problémů

Part 30

Jak nainstalovat a spravovat virtuální stroje a kontejnery

Part 31

Naučte se základy Git pro efektivní správu projektů

Part 32

Průvodce pro začátečníky konfigurací IPv4 a IPv6 adres v Linuxu

Part 33

Průvodce pro začátečníky vytvářením síťových vazeb a přemostění v Ubuntu

Tento příspěvek je 2. část série 33 výukových programů, zde v této části se budeme zabývat základními operacemi úpravy souborů a režimy porozumění v editoru Vi/Vim, které jsou vyžadovány pro certifikační zkoušku LFCS.

Proveďte základní operace úprav souborů v editoru Vi

Vi byl první celoobrazovkový textový editor napsaný pro Unix. Přestože byl zamýšlen jako malý a jednoduchý, může být trochu náročný pro lidi, kteří jsou zvyklí výhradně na textové editory GUI, jako je NotePad++ nebo gedit, abychom jmenovali alespoň některé. příklady.

Abychom mohli používat Vi, musíme nejprve porozumět 3 režimům, ve kterých tento výkonný program funguje, abychom se později mohli začít učit o jeho výkonných postupech úpravy textu.

Upozorňujeme, že většina moderních linuxových distribucí je dodávána s variantou vi známou jako vim („Vi zlepšeno “), která podporuje více funkcí než původní vi ano. Z tohoto důvodu budeme v tomto tutoriálu používat vi a vim zaměnitelně.

Pokud vaše distribuce nemá nainstalovaný Vim, můžete jej nainstalovat následovně.

sudo apt install vim         [On Debian, Ubuntu and Mint]
sudo yum install vim         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/vim  [On Gentoo Linux]
sudo apk add vim             [On Alpine Linux]
sudo pacman -S vim           [On Arch Linux]
sudo zypper install vim      [On OpenSUSE]    

Proč bych se měl chtít učit Vi?

Existují alespoň 2 dobré důvody, proč se učit editor vi.

  1. vi je vždy k dispozici (bez ohledu na to, jakou distribuci používáte), protože je vyžadována standardem POSIX.
  2. vi nespotřebovává značné množství systémových prostředků a umožňuje nám provádět jakýkoli představitelný úkol, aniž bychom museli zvedat prsty z klávesnice.

Kromě toho má vi vestavěný velmi rozsáhlý manuál, který lze spustit pomocí příkazu :help hned po spuštění programu. Tato vestavěná příručka obsahuje více informací než manuálová stránka vi/m.

Spuštění editoru Vi

Chcete-li spustit vi, zadejte do příkazového řádku vi.

vi

Poté stisknutím i přejděte do režimu Vložit a můžete začít psát.

Další způsob, jak spustit vi/m, je.

vi filename

Tím se otevře nový buffer (více o bufferech později) s názvem filename, který můžete později uložit na disk.

Pochopení režimů Vi

Editor Vi má několik režimů, z nichž každý slouží jinému účelu a umožňuje uživatelům provádět konkrétní akce.

Zde jsou hlavní režimy, o kterých byste měli vědět:

Vi Režim příkazového řádku

V příkazovém režimu umožňuje vi uživateli procházet souborem a zadávat příkazy vi, což jsou stručné kombinace jednoho nebo více písmen. Téměř všechny mohou mít předponu s číslem, aby se příkaz opakoval tolikrát, kolikrát.

Například yy (nebo Y) zkopíruje celý aktuální řádek, zatímco 3yy (nebo 3Y) zkopíruje celý aktuální řádek spolu se dvěma následujícími řádky (celkem 3 řádky).

Vždy můžeme vstoupit do příkazového režimu (bez ohledu na režim, na kterém pracujeme) stisknutím klávesy Esc. Skutečnost, že v příkazovém režimu jsou klávesy klávesnice interpretovány jako příkazy namísto textu, bývá pro začátečníky matoucí.

Režim Vi Ex

V režimu ex můžeme manipulovat se soubory (včetně ukládání aktuálního souboru a spouštění externích programů). Abychom vstoupili do tohoto režimu, musíme v příkazovém režimu zadat dvojtečku (:), za kterou přímo následuje název příkazu ex-mode, který je třeba použít. Poté se vi automaticky vrátí do příkazového režimu.

Vi Režim vkládání

V režimu vložit (pro vstup do tohoto režimu se běžně používá písmeno i) jednoduše zadáme text. Většina úhozů má za následek zobrazení textu na obrazovce (jednou důležitou výjimkou je klávesa Esc, která ukončí režim vkládání a vrátí se do příkazového režimu).

Použití příkazů Vi

Následující tabulka ukazuje seznam běžně používaných příkazů vi. Příkazy edice souboru lze vynutit připojením vykřičníku k příkazu (například :q! vynutí ukončení bez uložení).

 Key Command

 Popis

 h or left arrow

Jděte o jednu postavu doleva

 j or down arrow

Jděte o jeden řádek dolů

 k or up arrow

Jděte o řádek nahoru

 l (lowercase L) or right arrow

Jděte o jednu postavu doprava

 H

Přejděte do horní části obrazovky

 L

Přejděte do spodní části obrazovky

 G

Přejděte na konec souboru

 w

Posuňte jedno slovo doprava

 b

Přesuňte jedno slovo doleva

 0 (zero)

Přejít na začátek aktuálního řádku

 ^

Přejděte na první neprázdný znak na aktuálním řádku

 $

Přejděte na konec aktuálního řádku

 Ctrl-B

Vraťte se o jednu obrazovku zpět

 Ctrl-F

Přejít o jednu obrazovku vpřed

 i

Vložit na aktuální pozici kurzoru

 I (uppercase i)

Vložit na začátek aktuálního řádku

 J (uppercase j)

Připojte se k aktuální řadě k další (přesunout další řadu)

 a

Připojit za aktuální pozici kurzoru

 o (lowercase O)

Vytvoří prázdný řádek za aktuálním řádkem

 O (uppercase o)

Vytvoří prázdný řádek před aktuálním řádkem

 r

Nahraďte znak na aktuální pozici kurzoru

 R

Přepsat na aktuální pozici kurzoru

 x

Smažte znak na aktuální pozici kurzoru

 X

Vymažte znak bezprostředně před (vlevo) od aktuální pozice kurzoru

 dd

Vyjmout (pro pozdější vložení) celý aktuální řádek

 D

Vyjmout z aktuální pozice kurzoru na konec řádku (tento příkaz je ekvivalentní d$)

 yX

Zadejte pohybový příkaz X, zkopírujte (vytrhněte) příslušný počet znaků, slov nebo řádků z aktuální pozice kurzoru

 yy or Y

Zkopírujte (zkopírujte) celý aktuální řádek

 p

Vložit za (další řádek) aktuální pozici kurzoru

 P

Vložit před (předchozí řádek) aktuální pozici kurzoru

 . (period)

Opakujte poslední příkaz

 u

Vraťte zpět poslední příkaz

 U

Vraťte zpět poslední příkaz na posledním řádku. To bude fungovat, dokud bude kurzor stále na řádku.

 n

Najděte další shodu ve vyhledávání

 N

Najděte předchozí shodu ve vyhledávání

 :n

Další soubor; když je určeno více souborů pro úpravy, tento příkaz načte další soubor.

 :e file

Načtěte soubor místo aktuálního souboru.

 :r file

Vložte obsah souboru za (další řádek) aktuální pozici kurzoru

 :q

Ukončete bez uložení změn.

 :w file

Zapište aktuální vyrovnávací paměť do souboru. Pro připojení k existujícímu souboru použijte :w >> soubor.

 :wq

Napište obsah aktuálního souboru a ukončete. Ekvivalent x! a ZZ

 :r! command

Proveďte příkaz a vložte výstup za (další řádek) aktuální pozici kurzoru.

Možnosti Vi

Následující možnosti se mohou hodit při spuštění vim (musíme je přidat do našeho souboru ~/.vimrc).

echo set number >> ~/.vimrc
echo syntax on >> ~/.vimrc
echo set tabstop=4 >> ~/.vimrc
echo set autoindent >> ~/.vimrc

  • číslo sady zobrazuje čísla řádků, když vi otevře existující nebo nový soubor.
  • syntaxe on zapne zvýraznění syntaxe (pro více přípon souborů), aby byl kód a konfigurační soubory čitelnější.
  • set tabstop=4 nastaví velikost tabulátoru na 4 mezery (výchozí hodnota je 8).
  • nastavení automatického odsazení přenese předchozí odsazení na další řádek.

Hledat a nahradit text ve Vi

vi má schopnost přesunout kurzor na určité místo (na jeden řádek nebo přes celý soubor) na základě vyhledávání. Může také provádět nahrazování textu s potvrzením uživatele nebo bez něj.

Hledání uvnitř řádku

Příkaz f prohledá řádek a přesune kurzor na další výskyt zadaného znaku v aktuálním řádku.

Například příkaz fh přesune kurzor na další výskyt písmene h v aktuálním řádku. Všimněte si, že ani písmeno f ani znak, který hledáte, se nikde na obrazovce nezobrazí, ale znak se po stisknutí Enter zvýrazní.

To je například to, co dostanu po stisknutí f4 v příkazovém režimu.

Prohledávání celého souboru

Použijte příkaz / následovaný slovem nebo frází, kterou chcete vyhledat. Vyhledávání lze opakovat pomocí předchozího vyhledávacího řetězce s příkazem n nebo dalšího (pomocí příkazu N). Toto je výsledek zadání /Jane v příkazovém režimu.

Hledat a nahradit text

Vi používá příkaz (podobný příkazu sed) k provádění operací nahrazování v rozsahu řádků nebo celého souboru.

Chcete-li změnit slovo „old “ na „young “ pro celý soubor, musíme zadat následující příkaz.

 :%s/old/young/g 

Upozornění: Dvojtečka na začátku příkazu.

Dvojtečka (:) zahajuje příkaz ex, v tomto případě s (pro nahrazení) je % zkratka znamená od prvního řádku po poslední řádek (rozsah lze také zadat jako n,m, což znamená „od řádku n do řádku m ”), starý je vzor vyhledávání, zatímco young je nahrazující text a g označuje, že substituce by měla být provedena při každém výskytu vyhledávacího řetězce v souboru.

Alternativně lze na konec příkazu přidat c a požádat o potvrzení před provedením jakékoli náhrady.

:%s/old/young/gc

Před nahrazením původního textu novým nám vi/m předloží následující zprávu.

  • y: provést náhradu (ano)
  • n: přeskočit tento výskyt a přejít na další (ne)
  • a: provede substituci v tomto a všech následujících instancích vzoru.
  • q nebo Esc: ukončení nahrazování.
  • l (malé L): proveďte toto nahrazení a ukončete (poslední).
  • Ctrl-e, Ctrl-y: Posouváním dolů a nahoru zobrazíte kontext navrhovaného nahrazení.

Úprava více souborů ve Vi

Do příkazového řádku zadejte vim soubor1 soubor2 soubor3.

vim file1 file2 file3

Nejprve vim otevře soubor1. Pro přepnutí na další soubor (file2) musíme použít příkaz :n. Když se chceme vrátit k předchozímu souboru, :N to udělá.

Chcete-li přepnout ze souboru1 na souboru3.

a). Příkaz :buffers zobrazí seznam aktuálně upravovaného souboru.

:buffers

b). Příkaz :buffer 3 (bez s na konci) otevře file3 pro úpravy.

Na obrázku výše znak křížku (#) označuje, že soubor je aktuálně otevřený, ale na pozadí, zatímco %a označuje soubor, který je právě upravován.

Na druhou stranu, prázdné místo za číslem souboru (3 ve výše uvedeném příkladu) znamená, že soubor ještě nebyl otevřen.

Dočasné Vi Buffery

Chcete-li zkopírovat několik po sobě jdoucích řádků (řekněme například 4) do dočasné vyrovnávací paměti s názvem a (nepřidružené k souboru) a umístit tyto řádky do jiné části souboru později v aktuálním vi sekce, musíme…

  • Stiskněte klávesu ESC, abyste se ujistili, že jsme v příkazovém režimu vi.
  • Umístěte kurzor na první řádek textu, který chceme zkopírovat.
  • Napište „a4yy“ pro zkopírování aktuálního řádku spolu se 3 následujícími řádky do vyrovnávací paměti s názvem a. Můžeme pokračovat v úpravách našeho souboru – nemusíme hned vkládat zkopírované řádky.
  • Když se dostaneme na místo pro zkopírované řádky, použijte „a před příkazy p nebo P k vložení zkopírovaných řádků do vyrovnávací paměti s názvem < b>a:

    1. Napište „ap pro vložení řádků zkopírovaných do vyrovnávací paměti za aktuální řádek, na kterém je kurzor.
    2. Napište „aP pro vložení řádků zkopírovaných do vyrovnávací paměti a před aktuální řádek.

Pokud si přejeme, můžeme zopakovat výše uvedené kroky a vložit obsah vyrovnávací paměti na více míst v našem souboru. Dočasná vyrovnávací paměť, jako je ta v této části, se odstraní při zavření aktuálního okna.

souhrn

Jak jsme viděli, vi/m je výkonný a všestranný textový editor pro CLI. Neváhejte a podělte se o své vlastní triky a komentáře níže.

Aktualizace: Pokud si chcete rozšířit své dovednosti v editoru VI, pak bych vám doporučil přečíst si následující dva průvodce, které vás dovedou užitečné triky a tipy editoru VI.

eKniha LFCS je nyní k dispozici k zakoupení. Objednejte si svou kopii ještě dnes a začněte svou cestu stát se certifikovaným správcem systému Linux!

Product Name Price Buy
The Linux Foundation’s LFCS Certification Preparation Guide $19.99 [Buy Now]

V neposlední řadě zvažte nákup voucheru na zkoušku pomocí následujících odkazů, abyste nám vydělali malou provizi, která nám pomůže tuto knihu aktualizovat.