V tomto tutoriálu pro Linux se naučíte zkratky editoru VI, několik tipů a několik hacků produktivity, které lze použít pro inženýry a vývojáře DevOps.
Pokud jste inženýr DevOps nebo někdo, kdo pracuje na systémech Linux, editor vi se často používá k úpravě souborů. Na rozdíl od editorů grafického uživatelského rozhraní se však uživatelé editoru VI poprvé bojí kvůli různým stiskům kláves pro ovládání úprav.
Můžete však ušetřit čas a zvýšit produktivitu s trochou praxe a zkratkami editoru vi ve vašich každodenních činnostech. Jakmile to pochopíte, začnete editor VI milovat. Navíc je to velmi výkonný textový editor v ekosystému Linuxu.
Zkratky editoru VI pro začátečníky
V tomto článku se budeme zabývat nezbytnými zkratkami editoru VI, které byste mohli používat při každodenních činnostech v Linuxu.
Napsal jsem také článek o výuce skriptování shellu pro DevOps. Hacky editoru VI se hodí i při práci se skripty shellu.
Režimy editoru VI
Než se pustíte do zkratek, měli byste pochopit pět režimů editoru vim.
V editoru VI je pět režimů.
- Normální režim
- Režim vložení
- Vizuální režim
- Příkazový režim
- Režim nahrazení
Normální režim
Když otevřete jakýkoli soubor v editoru VI, výchozí režim je Normal Mode
. V tomto režimu můžete kurzorem procházet soubor pomocí různých zkratek.
Následují zkratky pro pohyb kurzoru v různých směrech. Pokud ke zkratce přidáte číslo, pohyb se znásobí.
Zkratka VI | Akce |
h | Přesuňte jeden znak doleva (4h posunou čtyři znaky doleva) |
j | Posunout o řádek dolů ( 4j -> 4 řádky dolů) |
k | Posun o jeden řádek nahoru (5 kB -> 5 řádků nahoru) |
l | Posun o jeden znak doprava (8l -> 8 znaků doprava) |
Dále se naučíme zkratky pro procházení slov. Zde mají malá a velká písmena různé funkce.
Zkratka VI | Akce |
w | Přejde na začátek slova. W přejde na začátek dalšího slova za mezerou. |
b | Přejde na začátek předchozího slova. B přejde na začátek předchozího slova před mezerou. |
e | Přešel na konec slova. E přejde na konec slova před mezerou. |
Při práci se soubory je většinou vyžadována další zkratka.
Zkratka VI | Akce |
0 | Přejde na začátek řádku |
$ | Přejde na konec řádku |
Režim vkládání
V režimu vkládání můžete soubor upravit. Níže jsou uvedeny zkratky pro úpravy. Opět zde mají malá a velká písmena různé funkce.
Zkratka VI | Akce |
i | Vloží editor VI a vloží další. ( Já –> Přejde na začátek řádku v režimu vkládání) |
a | Kurzor se v režimu vkládání přesune na další znak ( A – přesune se na konec řádku v režimu vkládání) |
o | Vloží nový z aktuální pozice kurzoru v režimu vkládání. (O – vloží nový řádek nad aktuální pozici kurzorů v režimu vkládání) |
Vizuální režim
Vizuální režim usnadňuje výběr a úpravu textu v editoru VI. Pro vstup do vizuálního režimu stačí zadat „v
“.
Budete moci vybrat více řádků.
Příkazový režim
V příkazovém režimu můžete spouštět příkazy a manipulovat s textem. Například najít a nahradit text v celém souboru.
Abyste mohli pracovat s příkazovým režimem, musíte znát následující.
Zkratka VI | Akce |
s | Spuštění příkazového režimu |
% | Zvažuje všechny řádky v souboru. |
s | pro náhradu. |
/g | globální změna |
Na některé příklady příkazového režimu se podíváme dále v článku.
Režim nahrazení
Režim nahrazení slouží k nahrazení existujících textů v dokumentu.
umístěte kurzor na první znak díla a zadejte „R
“ v normálním režimu. Jakmile začnete psát, slovo bude nahrazeno.
Nastavení prostředí editoru VI
Než se ponoříte do zkratek a příkazů, musíte porozumět nastavení editoru vi. Všechny potřebné parametry editoru vi můžete nastavit v ~/.vimrc
soubor, který bude standardně načten.
Pokud nemáte vimrc
vytvořte jej pomocí touch ~/.vimrc
Níže jsou uvedeny běžné parametry, které můžete potřebovat v vimrc
soubor.
set number set autoindent set shiftwidth=4 set softtabstop=4 set expandtab
set number
parametr nastaví číslo řádku pro váš editor vi.
Toto můžete dočasně nastavit a deaktivovat spuštěním :set nonumber
z editoru
Vyjmout Kopírovat Vložit v editoru Vi
Při kopírování a vkládání pomocí vizuálního režimu postupujte podle níže uvedených kroků.
- Vstupte do vizuálního režimu pomocí
ESC + v
a pohybem kurzoru vyberte řetězec, který chcete zkopírovat. - Použijte velké
V
vyberte celý řádek. - Použijte
d
vyjmout neboy
kopírovat. - Umístěte kurzor na požadované místo a stiskněte
p
vložit.
Následující Gif ukazuje ukázku.
Odstranění řádků a slov
Zde je návod, jak můžete odstranit řádky a slova v editoru VI.
- Umístěte kurzor na řádek, který chcete smazat, a stiskněte
dd
smazat tento řádek - Chcete-li odstranit konkrétní počet řádků, můžete použít
d10d
. Tím smažete 10 řádků začínajících od kurzoru . Místo 10 můžete zadat libovolné číslo podle svých potřeb. - Chcete-li vybrat a odstranit konkrétní řádek, použijte
Shift + V
(Vizuální režim) a poté pro výběr použijte šipky nahoru a dolů. Jakmile vyberete řádky, stiskněted
pro smazání všech vybraných řádků.
Chcete-li slova odstranit, povolte režim vkládání (ESC + I) a můžete provést následující.
Ctrl + w
smaže poslední slovo, kde je kurzor.Ctrl + u
odstraní všechna slova, která jsou bezprostředně vlevo od kurzoru.
Vyhledávání a nahrazování textů
Soubory můžete prohledávat stisknutím /
v normálním režimu.
Pokud například chcete vyhledat klíčové slovo data
, měli byste udělat následující.
/data
Chcete-li najít další výskyt, stiskněte n
Poznámka: Vyhledávání rozlišuje malá a velká písmena. Pokud chcete vyhledávání bez rozlišení velkých a malých písmen, měli byste nastavit
:set ignorecase
v editoru.
Vstupte do příkazového režimu (ESC + :
) a pro nahrazení vzoru použijte následující syntaxi.
:%s/pattern/replace/g
K nahrazení každého výskytu výzvou použijte následující syntaxi. Zvýrazní všechny výskyty. Můžete si vybrat, který výskyt chcete nahradit a který ponechat tak, jak je.
:%s/pattern/replace/gc
Převést na velká a malá písmena
V případě převodu textu podržte kurzor na řádku a v normálním režimu použijte následující zkratky (ESC
).
- Chcete-li převést řádek na velká písmena, použijte
gUU
- Chcete-li převést řádek na malá písmena, použijte
guu
Kopírování obsahu z jiného souboru v editoru Vi
To není něco, co děláte příliš často. Pokud však potřebujete k aktuálnímu souboru, který upravujete, přidat obsah jiného souboru, umístěte kurzor na požadovaný řádek a v příkazovém režimu můžete použít následující syntaxi. Obsah zadaného souboru bude zkopírován z dalšího řádku kurzoru.
:r /path/to/file
Pokud například zkopírujete informace o CPU do existujícího souboru, použijete následující příkaz.
:r /proc/cpuinfo
Spouštění/kopírování obsahu z příkazu
Další linuxové příkazy můžete spouštět v editoru v příkazovém režimu (ESC + :
)
Pro spouštění příkazů z editoru můžete použít :! <command>
. Například,
:! pwd
Pokud chcete, aby byl výstup příkazu zkopírován do editačního souboru, můžete použít :r! <command>.
Například
získat a zkopírovat eth0
IP adresu, můžete provést následující.
:r! ip addr | grep eth0 | grep inet | awk '{print $2}' | cut -d / -f1
Nápověda editoru Vi
S editorem VI můžete dělat tolik věcí.
Pokud se chcete stát zkušeným uživatelem editoru VI, měli byste využít funkci tutor VIM.
vimtutor
Ve vašem terminálu otevře výukový program příkazového řádku. A můžete použít všechny normální příkazy vi k procházení dokumentu nápovědy.
Zabalení
VI je velmi výkonný editor.
Pochopení všech funkcí a všech zkratek editoru vi vyžaduje čas a neustálou praxi.
Vysvětlil jsem některé příkazy, tipy a zkratky editoru vi, které ušetří čas při práci s editorem vi.
Pokud si myslíte, že máte nějaké tipy, podělte se s námi o ně v sekci komentářů. Mohlo by to pomoci ostatním.
Pokud začínáte jako DevOps Engineer, podívejte se také na důležité příkazy Linux Troubleshooting.