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.
- vi je vždy k dispozici (bez ohledu na to, jakou distribuci používáte), protože je vyžadována standardem POSIX.
- 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:
- Napište „ap pro vložení řádků zkopírovaných do vyrovnávací paměti za aktuální řádek, na kterém je kurzor.
- 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.