LFCS #2: Kako instalirati i koristiti Vi/Vim u Linuxu
Prije nekoliko mjeseci, Linux Foundation pokrenuo je LFCS (Linux Foundation Certified Sysadmin) certifikaciju kako bi pomogao pojedincima iz cijelog svijeta da potvrde da su sposobni obavljati osnovne do srednje administrativne zadatke na Linux sustavima.
Zadaci administracije Linuxa uključuju rješavanje problema i održavanje iz prve ruke, plus inteligentno donošenje odluka kako biste znali kada je vrijeme da se problemi iznesu višim timovima za podršku.
Serijal će se zvati Priprema za LFCS (Linux Foundation Certified Sysadmin) dijelovi od 1 do 33 i pokrivat će sljedeće teme:
- Part 1
Kako koristiti naredbu 'Sed' za manipuliranje datotekama u Linuxu
- Part 2
Kako instalirati i koristiti Vi/Vim u Linuxu
- Part 3
-
Kako komprimirati datoteke i direktorije i pronaći datoteke u Linuxu
- Part 4
Particioniranje uređaja za pohranu, formatiranje datotečnih sustava i konfiguriranje swap particije
- Part 5
Montirajte/demontirajte lokalne i mrežne (Samba & NFS) datotečne sustave u Linuxu
- Part 6
Sastavljanje particija kao RAID uređaja – Stvaranje sigurnosnih kopija sustava i upravljanje njima
- Part 7
Upravljanje procesima i uslugama pokretanja sustava (SysVinit, Systemd i Upstart
- Part 8
Kako upravljati korisnicima i grupama, dopuštenjima za datoteke i Sudo pristupom
- Part 9
Upravljanje Linux paketima uz Yum, RPM, Apt, Dpkg, Aptitude i Zypper
- Part 10
Učenje osnovnog skriptiranja ljuske i rješavanja problema sa datotečnim sustavom
- Part 11
Kako upravljati i stvoriti LVM pomoću naredbi vgcreate, lvcreate i lvextend
- Part 12
Kako istražiti Linux s instaliranom dokumentacijom za pomoć i alatima
- Part 13
-
Kako konfigurirati i riješiti probleme Grand Unified Bootloadera (GRUB)
- Part 14
Pratite korištenje resursa Linux procesa i postavite ograničenja procesa za svakog korisnika
- Part 15
Kako postaviti ili izmijeniti parametre vremena izvođenja jezgre u Linux sustavima
- Part 16
Implementacija obvezne kontrole pristupa sa SELinuxom ili AppArmorom u Linuxu
- Part 17
Kako postaviti popise kontrole pristupa (ACL) i diskovne kvote za korisnike i grupe
- Part 18
Instaliranje mrežnih usluga i konfiguriranje automatskog pokretanja pri dizanju
- Part 19
Vrhunski vodič za postavljanje FTP poslužitelja za dopuštanje anonimnih prijava
- Part 20
Postavite osnovni DNS poslužitelj rekurzivnog predmemoriranja i konfigurirajte zone za domenu
- Part 21
Kako instalirati, osigurati i podesiti performanse MariaDB poslužitelja baze podataka
- Part 22
Kako instalirati i konfigurirati NFS poslužitelj za dijeljenje sustava datoteka
- Part 23
-
Kako postaviti Apache s virtualnim hostingom temeljenim na imenu sa SSL certifikatom
- Part 24
Kako postaviti Iptables vatrozid za omogućavanje udaljenog pristupa uslugama u Linuxu
- Part 25
Kako pretvoriti Linux u usmjerivač za statički i dinamički rukovanje prometom
- Part 26
Kako postaviti šifrirane datotečne sustave i zamijeniti ih pomoću alata Cryptsetup
- Part 27
Kako pratiti korištenje sustava, ispade i otkloniti probleme s Linux poslužiteljima
- Part 28
Kako postaviti mrežno spremište za instaliranje ili ažuriranje paketa
- Part 29
Kako provjeriti rad mreže, sigurnost i rješavanje problema
- Part 30
Kako instalirati i upravljati virtualnim strojevima i spremnicima
- Part 31
Naučite osnove Gita za učinkovito upravljanje projektima
- Part 32
Vodič za početnike za konfiguriranje IPv4 i IPv6 adresa u Linuxu
- Part 33
Vodič za početnike za stvaranje mrežnog povezivanja i premošćivanja u Ubuntuu
Ovaj post je 2. dio serije od 33 vodiča, ovdje u ovom dijelu, pokrit ćemo osnovne operacije uređivanja datoteka i načine razumijevanja u Vi/Vim uređivaču, koji su potrebni za LFCS certifikacijski ispit.
Izvršite osnovne operacije uređivanja datoteka u Vi Editoru
Vi je bio prvi uređivač teksta preko cijelog zaslona napisan za Unix. Iako je zamišljeno da bude malen i jednostavan, može biti pomalo izazovno za ljude koji koriste isključivo GUI uređivače teksta, kao što su NotePad++ ili gedit, da spomenemo samo neke primjeri.
Da bismo koristili Vi, prvo moramo razumjeti 3 načina rada u kojima ovaj moćni program radi, kako bismo kasnije počeli učiti o njegovim moćnim postupcima za uređivanje teksta.
Imajte na umu da se većina modernih distribucija Linuxa isporučuje s varijantom vi poznatom kao vim (“Vi poboljšani”), koja podržava više značajki od originalni vi radi. Iz tog razloga, tijekom ovog vodiča, koristit ćemo vi i vim naizmjenično.
Ako vaša distribucija nema instaliran Vim, možete ga instalirati na sljedeći način.
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]
Zašto bih trebao naučiti Vi?
Postoje barem 2 dobra razloga da naučite vi editor.
- vi je uvijek dostupan (bez obzira koju distribuciju koristite) budući da ga zahtijeva POSIX.
- vi ne troši znatnu količinu sistemskih resursa i omogućuje nam obavljanje bilo kojeg zamislivog zadatka bez dizanja prstiju s tipkovnice.
Osim toga, vi ima vrlo opsežan ugrađeni priručnik, koji se može pokrenuti pomoću naredbe :help
odmah nakon pokretanja programa. Ovaj ugrađeni priručnik sadrži više informacija nego vi/m-ova man stranica.
Pokretanje Vi Editora
Za pokretanje vi upišite vi u naredbeni redak.
vi
Zatim pritisnite i
za ulazak u mod Insert i možete početi tipkati.
Drugi način pokretanja vi/m je.
vi filename
Ovo će otvoriti novi međuspremnik (više o međuspremnicima kasnije) pod nazivom filename, koji kasnije možete spremiti na disk.
Razumijevanje Vi modova
Vi uređivač ima više načina rada, od kojih svaki služi različitoj svrsi i omogućuje korisnicima izvođenje određenih radnji.
Ovo su glavni načini kojih biste trebali biti svjesni:
Vi način naredbenog retka
U naredbenom načinu, vi omogućuje korisniku kretanje po datoteci i unos vi naredbi, koje su kratke kombinacije jednog ili više slova. Gotovo svaki od njih može imati prefiks s brojem da ponovi naredbu taj broj puta.
Na primjer, yy (ili Y) kopira cijeli trenutni redak, dok 3yy (ili 3Y) kopira cijeli trenutni red zajedno sa dva sljedeća retka (ukupno 3 retka).
Uvijek možemo ući u naredbeni način (bez obzira na način na kojem radimo) pritiskom na tipku Esc. Činjenica da se u naredbenom načinu rada tipke na tipkovnici tumače kao naredbe umjesto teksta obično zbunjuje početnike.
Vi Ex način
U ex načinu rada možemo manipulirati datotekama (uključujući spremanje trenutne datoteke i pokretanje vanjskih programa). Da bismo ušli u ovaj način, moramo utipkati dvotočku (:
) iz naredbenog načina rada, nakon čega slijedi naziv naredbe bivšeg načina rada koju treba koristiti. Nakon toga, vi se automatski vraća u naredbeni mod.
Vi način umetanja
U načinu umetanja (za ulazak u ovaj način obično se koristi slovo i
), jednostavno unosimo tekst. Većina pritisaka tipki dovodi do pojavljivanja teksta na zaslonu (jedna važna iznimka je tipka Esc, koja izlazi iz načina umetanja i vraća se u naredbeni način).
Upotreba Vi naredbi
Sljedeća tablica prikazuje popis najčešće korištenih vi naredbi. Naredbe za izdavanje datoteke mogu se nametnuti dodavanjem znaka uzvika naredbi (na primjer, :q!
nameće izlazak bez spremanja).
- Key Command
Opis
- h or left arrow
Idi jedan znak ulijevo
- j or down arrow
Spustite se jednu liniju
- k or up arrow
Idi jedan red gore
- l (lowercase L) or right arrow
Idi jedan znak udesno
- H
Idite na vrh zaslona
- L
Idite na dno ekrana
- G
Idi na kraj datoteke
- w
Pomakni jednu riječ udesno
- b
Pomakni jednu riječ ulijevo
- 0 (zero)
Idi na početak trenutnog retka
- ^
Idi na prvi znak koji nije prazan u trenutnom retku
- $
Idi na kraj trenutnog retka
- Ctrl-B
Vratite se jedan zaslon unatrag
- Ctrl-F
Idi naprijed jedan zaslon
- i
Umetni na trenutnu poziciju kursora
- I (uppercase i)
Umetni na početak trenutnog retka
- J (uppercase j)
Spoji trenutni red sa sljedećim (pomakni sljedeći redak)
- a
Dodajte nakon trenutne pozicije pokazivača
- o (lowercase O)
Stvara prazan redak nakon trenutnog retka
- O (uppercase o)
Stvara prazan redak prije trenutnog retka
- r
Zamijenite znak na trenutnoj poziciji kursora
- R
Prepiši na trenutnoj poziciji kursora
- x
Izbrišite znak na trenutnoj poziciji kursora
- X
Izbrišite znak neposredno ispred (lijevo) trenutne pozicije kursora
- dd
Izrežite (za kasnije lijepljenje) cijelu trenutnu liniju
- D
Izrežite od trenutne pozicije kursora do kraja retka (ova naredba je ekvivalentna d$)
- yX
Dajte naredbu za kretanje X, kopirajte (povucite) odgovarajući broj znakova, riječi ili redaka s trenutne pozicije kursora
- yy or Y
Yank (kopiraj) cijeli trenutni redak
- p
Zalijepi nakon (sljedeći red) trenutne pozicije kursora
- P
Zalijepi ispred (prethodnog retka) trenutne pozicije kursora
- . (period)
Ponovite zadnju naredbu
- u
Poništavanje zadnje naredbe
- U
Poništavanje zadnje naredbe u zadnjem retku. Ovo će raditi sve dok je kursor još na liniji.
- n
Pronađite sljedeće podudaranje u pretrazi
- N
Pronađite prethodno podudaranje u pretrazi
- :n
Sljedeća datoteka; kada je za uređivanje navedeno više datoteka, ova naredba učitava sljedeću datoteku.
- :e file
Učitajte datoteku umjesto trenutne datoteke.
- :r file
Umetnite sadržaj datoteke nakon (sljedeći redak) trenutne pozicije kursora
- :q
Zatvori bez spremanja promjena.
- :w file
Zapišite trenutni međuspremnik u datoteku. Za dodavanje postojećoj datoteci upotrijebite :w >> datoteka.
- :wq
Napišite sadržaj trenutne datoteke i zatvorite. Ekvivalentno x! i ZZ
- :r! command
Izvršite naredbu i umetnite izlaz nakon (sljedeći red) trenutne pozicije kursora.
Vi opcije
Sljedeće opcije mogu biti korisne dok izvodite vim (moramo ih dodati u našu datoteku ~/.vimrc).
echo set number >> ~/.vimrc
echo syntax on >> ~/.vimrc
echo set tabstop=4 >> ~/.vimrc
echo set autoindent >> ~/.vimrc
- set number prikazuje brojeve redaka kada vi otvori postojeću ili novu datoteku.
- Sintaksa uključena uključuje označavanje sintakse (za više ekstenzija datoteka) kako bi kod i konfiguracijske datoteke bile čitljivije.
- set tabstop=4 postavlja veličinu kartice na 4 razmaka (zadana vrijednost je 8).
- set autoindent prenosi prethodnu uvlaku u sljedeći redak.
Traži i zamijeni tekst u Vi
vi ima mogućnost pomicanja pokazivača na određeno mjesto (u jednom retku ili preko cijele datoteke) na temelju pretraživanja. Također može izvršiti zamjenu teksta sa ili bez potvrde korisnika.
Pretraživanje unutar retka
Naredba f
pretražuje redak i pomiče kursor na sljedeće pojavljivanje navedenog znaka u trenutnom retku.
Na primjer, naredba fh
pomaknula bi kursor na sljedeću instancu slova h
unutar trenutnog retka. Imajte na umu da se ni slovo f
niti znak koji tražite neće pojaviti nigdje na vašem zaslonu, ali znak će biti istaknut nakon što pritisnete Enter.
Na primjer, ovo dobivam nakon pritiska f4
u naredbenom modu.
Pretraživanje cijele datoteke
Upotrijebite naredbu /
, nakon koje slijedi riječ ili izraz za pretraživanje. Pretraživanje se može ponoviti korištenjem prethodnog niza pretraživanja pomoću naredbe n
ili sljedećeg (korištenjem naredbe N
). Ovo je rezultat upisivanja /Jane
u naredbenom modu.
Traži i zamijeni tekst
Vi koristi naredbu (sličnu sed-ovoj) za izvođenje operacija zamjene u nizu redaka ili cijeloj datoteci.
Kako bismo promijenili riječ “old
” u “young
” za cijelu datoteku, moramo unijeti sljedeću naredbu.
:%s/old/young/g
Obavijest: dvotočka na početku naredbe.
Dvotočka (:
) započinje naredbu ex, s
u ovom slučaju (za zamjenu), %
je prečac koji znači od prvog do zadnjeg retka (raspon se također može navesti kao n
,m
što znači “od retka n do retka m ”), star je uzorak pretraživanja, dok je mlad zamjenski tekst, a g
označava da se zamjena treba izvršiti pri svakom pojavljivanju niza za pretraživanje u datoteci.
Alternativno, c
se može dodati na kraj naredbe kako bi se tražila potvrda prije izvođenja bilo kakve zamjene.
:%s/old/young/gc
Prije zamjene originalnog teksta novim, vi/m će nam predstaviti sljedeću poruku.
- y: izvršite zamjenu (da)
- n: preskoči ovu pojavu i idi na sljedeću (ne)
- a: izvedite zamjenu u ovoj i svim sljedećim instancama uzorka.
- q ili Esc: odustanite od zamjene.
- l (malo L): izvedite ovu zamjenu i izađite (zadnji).
- Ctrl-e, Ctrl-y: Pomaknite se prema dolje odnosno prema gore da biste vidjeli kontekst predložene zamjene.
Uređivanje više datoteka u Vi
Ukucajmo vim file1 file2 file3 u naš naredbeni redak.
vim file1 file2 file3
Prvo će vim otvoriti file1. Za prebacivanje na sljedeću datoteku (file2), moramo upotrijebiti naredbu :n
. Kada se želimo vratiti na prethodnu datoteku, :N
će obaviti posao.
Za prebacivanje s file1 na file3.
a). Naredba :buffers
prikazat će popis datoteke koja se trenutno uređuje.
:buffers
b). Naredba :buffer 3
(bez s
na kraju) otvorit će file3 za uređivanje.
Na gornjoj slici, znak funte (#
) označava da je datoteka trenutno otvorena, ali u pozadini, dok %a
označava datoteku koja se trenutno uređuje.
S druge strane, prazan prostor iza broja datoteke (3 u gornjem primjeru) označava da datoteka još nije otvorena.
Privremeni međuspremnici Vi
Da biste kopirali nekoliko uzastopnih redaka (recimo 4, na primjer) u privremeni međuspremnik pod nazivom a (nije pridružen datoteci) i smjestili te retke u drugi dio datoteke kasnije u trenutnom vi odjeljak, moramo...
- Pritisnite tipku
ESC
kako biste bili sigurni da smo u vi Command modu. - Postavite kursor na prvi redak teksta koji želimo kopirati.
- Upišite “a4yy” za kopiranje trenutnog retka, zajedno s 3 sljedeća retka, u međuspremnik pod nazivom a. Možemo nastaviti s uređivanjem naše datoteke – ne moramo odmah umetati kopirane retke.
Kada dođemo do lokacije za kopirane retke, upotrijebite “a prije naredbi p ili P da biste umetnuli retke kopirane u međuspremnik pod nazivom < b>a:
- Upišite “ap da biste umetnuli retke kopirane u međuspremnik nakon trenutnog retka na kojem se nalazi kursor.
- Upišite “aP da biste umetnuli retke kopirane u međuspremnik a prije trenutnog retka.
Ako želimo, možemo ponoviti gornje korake kako bismo umetnuli sadržaj međuspremnika na više mjesta u našoj datoteci. Privremeni međuspremnik, poput onog u ovom odjeljku, uklanja se kada se trenutni prozor zatvori.
Sažetak
Kao što smo vidjeli, vi/m je moćan i svestran uređivač teksta za CLI. Slobodno podijelite svoje trikove i komentare ispod.
Ažuriranje: Ako želite proširiti svoje vještine VI uređivača, predlažem da pročitate sljedeća dva vodiča koji će vas voditi do nekih korisni VI uređivački trikovi i savjeti.
LFCS e-knjiga sada je dostupna za kupnju. Naručite svoju kopiju već danas i krenite na svoje putovanje do certificiranog administratora Linux sustava!
Product Name | Price | Buy |
---|---|---|
The Linux Foundation’s LFCS Certification Preparation Guide | $19.99 | [Buy Now] |
Na kraju, ali ne manje važno, razmislite o kupnji vaučera za ispit koristeći sljedeće veze kako biste zaradili malu proviziju, koja će nam pomoći da ovu knjigu ažuriramo.