์ƒˆ์†Œ์‹

OS/Linux

๐Ÿ“–VI ์—๋””ํ„ฐ & ๋ช…๋ น์–ด์˜ ๋ชจ๋“  ๊ฒƒ

  • -

๐Ÿ“Œvi ์—๋””ํ„ฐ๋ž€?

- vi๋Š” ๋นŒ ์กฐ์ด๊ฐ€ ๋งŒ๋“  UNIX๊ณ„์—ด ํ™˜๊ฒฝ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด์“ฐ์ด๋Š” ์˜คํ”ˆ ์†Œ์Šค ๋ฌธ์„œ ํŽธ์ง‘๊ธฐ๋กœ ํ•œ ์ค„์”ฉ ํŽธ์ง‘ํ•˜๋Š” ์ค„๋‹จ์œ„ ํŽธ์ง‘๊ธฐ๊ฐ€ ์•„๋‹ˆ๋ผ ํ•œ ํ™”๋ฉด์„ ํŽธ์ง‘ํ•˜๋Š” 'Visual Editor' ๋ผ๋Š” ๋œป์—์„œ ์œ ๋ž˜ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 

 

๐Ÿ“Œvi ์™€  vim ์˜ ์ฐจ์ด?

vim์€ 'VI Improved' ์ฆ‰, ํ–ฅ์ƒ๋œ vi๋ฅผ ์˜๋ฏธํ•˜๋Š”๋ฐ, vi์˜ ๊ฒฝ์šฐ ๊ฐ„๊ฒฐํ•œ ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ๋Šฅ๋งŒ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ˜๋ฉด์— VIM์€ ํ™•์žฅ๋œ ์ •๊ทœ ํ‘œํ˜„์‹ ๋ฌธ๋ฒ•, ๋ฌธ๋ฒ• ๊ฐ•์กฐ๊ธฐ๋Šฅ, ๋‹ค์ค‘ ๋˜๋Œ๋ฆฌ๊ธฐ ๋“ฑ vi๋ณด๋‹ค ํ™•์žฅ๋œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋Œ€๋‹ค์ˆ˜์˜ UNIX์™€ LINUX ๋ฐฐํฌํŒ์˜ ๊ฒฝ์šฐ vim์ด ์„ค์น˜๋˜์–ด ์žˆ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ vi๋ฅผ alias ์„ค์ •ํ•˜์—ฌ vi๋ฅผ ์—ด์–ด๋„ vim์ด ์—ด๋ฆฌ๋„๋ก ์„ธํŒ…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ˜„์žฌ๋กœ์„ , ๊ตณ์ด vi์™€ vim์„ ๋ณ„๋„๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์•Œ ํ•„์š”๋Š” ์—†์–ด๋ณด์ž…๋‹ˆ๋‹ค. 

 

๐Ÿ“Œvi ์—๋””ํ„ฐ ํŒŒํ—ค์ณ๋ณด๊ธฐ

๐Ÿ”vi ์—๋””ํ„ฐ์˜ 3๊ฐ€์ง€ ๋ชจ๋“œ

1. ์ผ๋ฐ˜ ๋ชจ๋“œ: ํ™”์‚ดํ‘œ ์ด๋™์ด๋‚˜ ํŠน์ • ๋ฌธ์ž ์ˆ˜์ •/์‚ญ์ œ ๋ฐ ํŽธ์ง‘์— ์“ฐ์ด๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๋ช…๋ น์–ด๊ฐ€ ์—ฌ๊ธฐ์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๊ฐ€ ๊ธฐ๋ณธ ๋ชจ๋“œ ํ˜•ํƒœ ์ž…๋‹ˆ๋‹ค.

2. ์ž…๋ ฅ ๋ชจ๋“œ:์ผ๋ฐ˜ ๋ชจ๋“œ์—์„œ i(ํ˜„ ์ปค์„œ ์œ„์น˜์—์„œ ์ž…๋ ฅ๋ชจ๋“œ), a(ํ˜„ ์ปค์„œ ํ•œ ์นธ ๋’ค์—์„œ ์ž…๋ ฅ๋ชจ๋“œ), o(ํ•œ ์ค„ ์ถ”๊ฐ€ ํ›„ ์ž…๋ ฅ๋ชจ๋“œ)๋“ฑ์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ์ž๋™์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š” ๋ชจ๋“œ๋กœ, ์ด ์ƒํƒœ์—์„œ๋งŒ ํ…์ŠคํŠธ ์ž…๋ ฅ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

3. ๋ช…๋ น ๋ชจ๋“œ(์ฝœ๋ก  ๋ชจ๋“œ): ์‹œ์Šคํ…œ๊ณผ ๊ด€๋ จ๋œ ๋ถ€๋ถ„์„ ๋‹ด๋‹นํ•˜๋Š” ๋ชจ๋“œ. ์ผ๋ฐ˜ ๋ชจ๋“œ์—์„œ :(์ฝœ๋ก )์„ ๋ˆ„๋ฅด๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ช…๋ น์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋’ค์— ๋Š๋‚Œํ‘œ๋ฅผ ๋ถ™์ด๋ฉด ๊ฐ•์ œ ๋ช…๋ น์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๐Ÿ”vi ์—๋””ํ„ฐ๋กœ ๋ฌธ์„œํŽธ์ง‘ ์‹œ  ์ง„์ž… ๋ฐ ๋ชจ๋“œ ๋ณ€ํ™˜ ํ˜•ํƒœ

vi ํŒŒ์ผ๋ช… → ์ผ๋ฐ˜๋ชจ๋“œ ์ง„์ž… → i ๋˜๋Š” a๋กœ ์ž…๋ ฅ๋ชจ๋“œ ์ง„์ž…

→ ์ž‘์„ฑ ๋ฐ ์ˆ˜์ •์™„๋ฃŒํ•œ ๋’ค → esc๋กœ ์ผ๋ฐ˜๋ชจ๋“œ์ง„์ž…

→ ์ฝœ๋ก (:)์œผ๋กœ ๋ช…๋ น๋ชจ๋“œ(์ฝœ๋ก ๋ชจ๋“œ) ์ง„์ž… → ์ €์žฅ(w), ์ข…๋ฃŒ(q), ์ทจ์†Œ(i), ์ €์žฅ ํ›„ ์ข…๋ฃŒ(wq)

* vi์˜ ๋น„์ •์ƒ ์ข…๋ฃŒ์‹œ swp ํŒŒ์ผ์ด ๋‚จ์Œ →  ls -a๋กœ ์ˆจ๊ธดํŒŒ์ผ์„ ํ™•์ธํ•˜์—ฌ swp ํŒŒ์ผ ํ™•์ธ → ์‚ญ์ œ

 

 

๐Ÿ”vi ๋ช…๋ น์–ด ๋ชจ์Œ

๐Ÿ“–vi ์‹œ์ž‘ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช… ์˜ˆ์ œ
vi {ํŒŒ์ผ๋ช…} ํŒŒ์ผ์—ด๊ธฐ, ์ž‘์„ฑ vi test.txt
vi +{ํ–‰๋ฒˆํ˜ธ} {ํŒŒ์ผ๋ช…} ํŒŒ์ผ์„ ์—ด๊ณ , ์ž…๋ ฅํ•œ ํ–‰์œผ๋กœ ์ปค์„œ ์ด๋™ vi -100 test.txt
vi +/"{๊ฒ€์ƒ‰ ๋ฌธ์ž์—ด}" {ํŒŒ์ผ๋ช…} “๋ฌธ์ž์—ด”์˜ ์ฒ˜์Œ๋ฐœ์ƒ ๋‹จ์–ด๋ถ€ํ„ฐ ์—ด๊ธฐ vi -/"adc" test.txt
vi –r {ํŒŒ์ผ๋ช…} ์†์ƒ๋œ ํŒŒ์ผ ํšŒ๋ณต vi -r test.txt
view {ํŒŒ์ผ๋ช…} ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์—ด๊ธฐ๊ธฐ view test.txt


์ˆ˜์ • ํŒŒ์ผ ์—ด๊ธฐ

"vi {ํŒŒ์ผ๋ช…}"๋ช…๋ น์–ด๋กœ ์ž…๋ ฅํ–ˆ์„ ๋•Œ, ์ž…๋ ฅํ•œ ํŒŒ์ผ๋ช…์ด ์‹ค์ œ ์กด์žฌ ํ•œ ๊ฒฝ์šฐ ํŒŒ์ผ์„ ์ˆ˜์ •

์‹ ๊ทœ ํŒŒ์ผ ์ƒ์„ฑ

"vi {ํŒŒ์ผ๋ช…}"๋ช…๋ น์–ด๋กœ ์ž…๋ ฅํ–ˆ์„ ๋•Œ, ์ž…๋ ฅํ•œ ํŒŒ์ผ๋ช…์ด ์‹ค์ œ ์กด์žฌ ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ํŒŒ์ผ์„ ์ƒ์„ฑ

 

๐Ÿ“–vi ์ปค์„œ ์ด๋™

์ปค์„œ ์„ค๋ช…
h (←) ์™ผ์ชฝ์œผ๋กœ ์ปค์„œ ์ด๋™
j (↓) ์•„๋ž˜๋กœ ์ปค์„œ ์ด๋™
k (↑) ์œ„๋กœ ์ปค์„œ ์ด๋™
l (→) ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ปค์„œ ์ด๋™
w ์˜ค๋ฅธ์ชฝ ํ•œ ๋‹จ์–ด์˜ ๋ ๋ถ€๋ถ„์œผ๋กœ ์ปค์„œ ์ด๋™
e ์˜ค๋ฅธ์ชฝ ํ•œ ๋‹จ์–ด์˜ ์•ž ๋ถ€๋ถ„์œผ๋กœ ์ปค์„œ ์ด๋™
b ์™ผ์ชฝ ํ•œ ๋‹จ์–ด์˜ ์•ž ๋ถ€๋ถ„์œผ๋กœ ์ปค์„œ ์ด๋™
Enter ํ•œ ํ–‰ ์•„๋ž˜๋กœ ์ปค์„œ ์ด๋™
Back space ํ•œ ๋ฌธ์ž ์™ผ์ชฝ์œผ๋กœ ์ปค์„œ ์ด๋™
Space Bar ํ•œ ๋ฌธ์ž ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ปค์„œ ์ด๋™
^ ํ–‰์˜ ๋งจ ์™ผ์ชฝ์œผ๋กœ ์ปค์„œ ์ด๋™
$ ํ–‰์˜ ๋งจ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ปค์„œ ์ด๋™
H ํ™”๋ฉด์˜ ๋งจ ์œ„๋กœ ์ด๋™
M ํ™”๋ฉด์˜ ์ค‘๊ฐ„์œผ๋กœ ์ด๋™
L ํ™”๋ฉด์˜ ๋งจ ์•„๋ž˜๋กœ ์ด๋™
์ˆซ์žG ‘์ˆซ์ž’ ๋งŒํผ ์ง€์ •ํ•œ ์ค„๋กœ ์ปค์„œ ์ด๋™
Ctrl + i ํ•œ ํ™”๋ฉด ์œ„๋กœ ์ด๋™
Ctrl + b ํ•œ ํ™”๋ฉด ์•„๋ž˜๋กœ ์ด๋™
Ctrl + d ๋ฐ˜ ํ™”๋ฉด ์œ„๋กœ ์ด๋™
Ctrl + u ๋ฐ˜ ํ™”๋ฉด ์•„๋ž˜๋กœ ์ด๋™
Ctrl + e ํ•œ ์ค„์”ฉ ์œ„๋กœ ์ด๋™
Ctrl + y ํ•œ ์ค„์”ฉ ์•„๋ž˜๋กœ ์ด๋™

๐Ÿ“–๋ฌธ์ž, ํ–‰ , ์‚ฝ์ž… ๋ช…๋ น์–ด

์ปค์„œ ์„ค๋ช…
a ์ปค์„œ ์˜ค๋ฅธ์ชฝ์— ๋ฌธ์ž ์‚ฝ์ž…
A ์ปค์„œ ์˜ค๋ฅธ์ชฝ, ํ–‰์˜ ๋์— ๋ฌธ์ž ์‚ฝ์ž…
i ์ปค์„œ ์™ผ์ชฝ์— ๋ฌธ์ž ์‚ฝ์ž…
I ์ปค์„œ ์™ผ์ชฝ, ํ–‰์˜ ์ฒ˜์Œ์— ๋ฌธ์ž ์‚ฝ์ž…
o ์ปค์„œ ์•„๋ž˜์— ํ–‰ ์‚ฝ์ž…
O ์ปค์„œ ์œ„์— ํ–‰ ์‚ฝ์ž…
ESC ์ข…๋ฃŒ

๐Ÿ“–ํ…์ŠคํŠธ ๋ณ€๊ฒฝ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
cw ๋‹จ์–ด ๋ณ€๊ฒฝ
cc ํ–‰ ๋ณ€๊ฒฝ
C ์ปค์„œ ์˜ค๋ฅธ์ชฝ์˜ ํ–‰ ๋ณ€๊ฒฝ
s ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๋ฌธ์ž์—ด ๋Œ€์ฒด
S ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๋ผ์ธ์˜ ๋ฌธ์ž์—ด ๋Œ€์ฒด
r ์ปค์„œ ์œ„์น˜ ๋ฌธ์ž๋ฅผ ๋‹ค๋ฅธ ๋ฌธ์ž๋กœ ๋Œ€์ฒด
r-Enter ํ–‰ ๋ถ„๋ฆฌ
J ํ˜„์žฌ ํ–‰๊ณผ ์•„๋ž˜ ํ–‰ ๊ฒฐํ•ฉ
xp ์ปค์„œ ์œ„์น˜ ๋ฌธ์ž์™€ ์˜ค๋ฅธ์ชฝ ๋ฌธ์ž ๊ตํ™˜
~ ๋ฌธ์žํ˜•(๋Œ€, ์†Œ๋ฌธ์ž) ๋ณ€๊ฒฝ
u ์ด์ „ ๋ช…๋ น ์ทจ์†Œ
U ํ–‰ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์ทจ์†Œ, ์ด์ „์˜ ์ตœ์ข… ํ–‰ ์ทจ์†Œ
. ์ด์ „ ์ตœ์ข… ๋ช…๋ น ๋ฐ˜๋ณต

๐Ÿ“–ํ…์ŠคํŠธ ์‚ญ์ œ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
x ์ปค์„œ๊ฐ€ ์žˆ๋Š” ๋ฌธ์ž ์‚ญ์ œ
nx ์ปค์„œ๊ฐ€ ์žˆ๋Š” ์œ„์น˜๋ถ€ํ„ฐ n๊ฐœ์˜ ๋ฌธ์ž๋ฅผ ์‚ญ์ œ
dw ํ˜„์žฌ ์ปค์„œ์— ์žˆ๋Š” ํ•œ ๋‹จ์–ด ์‚ญ์ œ
dd ์ปค์„œ๊ฐ€ ์žˆ๋Š” ๋ผ์ธ ์‚ญ์ œ
ndd ์ปค์„œ๊ฐ€ ์žˆ๋Š” ๋ผ์ธ๋ถ€ํ„ฐ n๊ฐœ์˜ ๋ผ์ธ ์‚ญ์ œ
db ์ปค์„œ์˜ ์œ„์น˜์—์„œ ๊ฑฐ๊พธ๋กœ ํ•œ ๋‹จ์–ด ์‚ญ์ œ
D ์ปค์„œ ์˜ค๋ฅธ์ชฝ ํ–‰ ์‚ญ์ œ
:5,10d 5~10๋ฒˆ์งธ ํ–‰ ์‚ญ์ œ

๐Ÿ“–๋ณต์‚ฌ ๋ฐ ์ด๋™ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
yy ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ์ค„ ๋ณต์‚ฌ
Y ํ–‰ yank ๋˜๋Š” ๋ณต์‚ฌ
yh ์ปค์„œ์˜ ์™ผ์ชฝ ๋ฌธ์ž ๋ณต์‚ฌ
yl ์ปค์„œ์— ์œ„์น˜ํ•œ ๋ฌธ์ž ๋ณต์‚ฌ
yi ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ์ค„๊ณผ ๊ทธ ์•„๋žซ์ค„ ๋ณต์‚ฌ
yk ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ์ค„๊ณผ ๊ทธ ์œ—์ค„ ๋ณต์‚ฌ
p yank ๋˜๊ฑฐ๋‚˜ ์‚ญ์ œ๋œ ํ–‰ ํ˜„์žฌ ํ–‰ ์œ„๋กœ ์‚ฝ์ž…
P yank ๋˜๊ฑฐ๋‚˜ ์‚ญ์ œ๋œ ํ–‰ ํ˜„์žฌ ํ–‰ ์•„๋ž˜์— ์‚ฝ์ž…
:1,2 co 3 1~2ํ–‰์„ 3ํ–‰ ๋‹ค์Œ์œผ๋กœ ๋ณต์‚ฌ
:4,5 m 6 4~5ํ–‰์„ 6ํ–‰ ์œ„๋กœ ์ด๋™
  • yank : ํ™ฑ ์žก์•„๋‹น๊ธฐ๋‹ค

ํ•œ์ค„ ๋ณต์‚ฌ

ํ•ด๋‹น ๋ผ์ธ์—์„œ 'yy', ์ฆ‰ y๋ฅผ ๋‘๋ฒˆ ๋ˆ„๋ฅด๋ฉด ์บ์‹œ์— ์ €์žฅ
๋ถ™์—ฌ๋„ฃ๊ธฐ๋ฅผ ์›ํ•˜๋Š” ๊ณณ์œผ๋กœ ์ด๋™ํ•˜์—ฌ 'p'๋ฅผ ๋ˆ„๋ฅด๋ฉด ์ปค์„œ ๋‹ค์Œ ๋ผ์ธ์— ๋ถ™์—ฌ๋„ฃ๊ธฐ๊ฐ€ ๋จ

 

๋ธ”๋Ÿญ ๋ณต์‚ฌ

'v'ํ‚ค๋ฅผ ๋ˆ„๋ฅธ ํ›„ ์ปค์„œ๋ฅผ ์ด๋™ํ•˜์—ฌ ๋ธ”๋Ÿญ์„ ์„ค์ •
(putty์˜ ๊ฒฝ์šฐ ๋ธ”๋Ÿญ์ด ์„ค์ •๋˜๋Š” ๋ชจ์Šต์ด ๋ณด์ด๋‚˜, ssh์˜ ๊ฒฝ์šฐ ๋ธ”๋Ÿญ ๋ชจ์Šต์ด ๋‚˜ํƒ€๋‚˜์ง€ ์•Š์œผ๋‚˜ ์‹ค์ œ๋กœ๋Š” ์„ค์ •๋˜๊ณ  ์žˆ์Œ)
์›ํ•˜๋Š” ๋ถ€๋ถ„์„ ๋ธ”๋Ÿญ์œผ๋กœ ์„ค์ •ํ•œ ๋’ค(์„ค์ • ์™„๋ฃŒํ‚ค๋Š” ์—†์Œ) 'y'ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋ฉด ์บ์‹œ์— ๋ณต์‚ฌ๊ฐ€ ๋จ
๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์›ํ•˜๋Š” ๊ณณ์œผ๋กœ ์ด๋™ํ•˜์—ฌ 'p'๋ฅผ ๋ˆ„๋ฅด๋ฉด ์ปค์„œ ๋‹ค์Œ ๋ผ์ธ์— ๋ถ™์—ฌ๋„ฃ๊ธฐ๊ฐ€ ๋จ

 

๐Ÿ“–ํ–‰ ๋ฒˆํ˜ธ ์„ค์ • ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
:set nu ๋˜๋Š” :set number ์—๋””ํ„ฐ์˜ ๊ฐ ํ–‰์˜ ์ขŒ์ธก์— ํ–‰ ๋ฒˆํ˜ธ ํ‘œ์‹œ
:set nonu ์—๋””ํ„ฐ์˜ ๊ฐ ํ–‰์˜ ์ขŒ์ธก ํ–‰ ๋ฒˆํ˜ธ ์ˆจ๊ธฐ๊ธฐ

๐Ÿ“–ํ–‰ ์ฐพ๊ธฐ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
G ํŒŒ์ผ์˜ ๋งˆ์ง€๋ง‰ ํ–‰์œผ๋กœ ๊ฐ€๊ธฐ
21G ํŒŒ์ผ์˜ 21๋ฒˆ์งธ ํ–‰์œผ๋กœ ๊ฐ€๊ธฐ
Ctrl + G ํ˜„์žฌ File name๊ณผ ์ปค์„œ์˜ ๋ผ์ธ ์ •๋ณด

๐Ÿ“–ํƒ์ƒ‰ ๋ฐ ๋Œ€์ฒด ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
/{๊ฒ€์ƒ‰ํ•  ๋ฌธ์ž์—ด} ์˜ค๋ฅธ์ชฝ ์•„๋ž˜ ๋ฐฉํ–ฅ์œผ๋กœ ๋ฌธ์ž์—ด ๊ฒ€์ƒ‰
?{๊ฒ€์ƒ‰ํ•  ๋ฌธ์ž์—ด} ์™ผ์ชฝ ์œ„ ๋ฐฉํ–ฅ์œผ๋กœ ๋ฌธ์ž์—ด ๊ฒ€์ƒ‰
n ๋ฌธ์ž์—ด์˜ ๋‹ค์Œ์œผ๋กœ ๊ณ„์† ๊ฒ€์ƒ‰
N ๋ฌธ์ž์—ด์˜ ์ด์ „์œผ๋กœ ๊ณ„์† ๊ฒ€์ƒ‰
:g/search-string/s/ ๊ฐ ๋ฐœ์ƒ ํƒ์ƒ‰ ํ›„ ํ™•์ธํ•˜๊ณ  ๋Œ€์ฒด
:s/string/rep ํ˜„์žฌ ํ–‰์˜ str์„ rep๋กœ ๋Œ€์ฒด
:1,.s/string/rep/ 1๋ถ€ํ„ฐ ํ˜„์žฌ ํ–‰์˜ str์„ rep๋กœ ๋Œ€์ฒด
:%s/string/rep/g ํŒŒ์ผ ์ „์ฒด str์„ rep๋กœ ์ „๋ถ€๋Œ€์ฒด
:.$/aaa/bbb ์ปค์„œ์˜ ์œ„์น˜๋กœ๋ถ€ํ„ฐ ํŒŒ์ผ์˜ ๋๊นŒ์ง€ ์žˆ๋Š” ๋ชจ๋“  aaa๋ฅผ bbb๋กœ ๋Œ€์ฒด

๐Ÿ“–ํ™”๋ฉด ์ •๋ฆฌ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
Ctrl + l ๋ถˆํ•„์š”ํ•œ ํ™”๋ฉด์ •๋ฆฌ ํ›„ ๋‹ค์‹œ ํ‘œ์‹œ

๐Ÿ“–ํŒŒ์ผ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช… ์˜ˆ์ œ
:r {ํŒŒ์ผ๋ช…} ์ปค์„œ ๋‹ค์Œ์— ํŒŒ์ผ ์‚ฝ์ž… :r test.txt
:{ํ–‰๋ฒˆํ˜ธ} r {ํŒŒ์ผ๋ช…} ์ž…๋ ฅํ•œ ํŒŒ์ผ์„ ์ž…๋ ฅํ•œ ํ–‰๋ฒˆํ˜ธ ๋‹ค์Œ์— ์‚ฝ์ž… :10 r test.txt

๐Ÿ“–๋ณด๊ด€ ๋ฐ ์ข…๋ฃŒ ๋ช…๋ น์–ด

๋ช…๋ น์–ด ์„ค๋ช…
:w ๋ณ€๊ฒฝ์‚ฌํ•ญ ์ €์žฅ
:w {ํŒŒ์ผ๋ช…} ๋ณ€๊ฒฝ์‚ฌํ•ญ ์ž…๋ ฅํ•œ ํŒŒ์ผ๋ช…์œผ๋กœ ์ €์žฅ
:wq ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ณด๊ด€ ํ›„ vi ์ข…๋ฃŒ. ZZ ๋ช…๋ น๊ณผ ๊ฐ™์Œ. :w(๊ธฐ๋ก)๊ณผ :q(์ข…๋ฃŒ) ๋ฅผ ์—ฐ์†์ ์œผ๋กœ ์ˆ˜ํ–‰
ZZ ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ณด๊ด€ ํ›„ vi ์ข…๋ฃŒ. ์ž„์‹œ ๋ฒ„ํผ์˜ ๋‚ด์šฉ์„ vi๋กœ ํ˜ธ์ถœํ• ๋•Œ ์‚ฌ์šฉ๋˜์—ˆ๋˜ ํŒŒ์ผ์— ๊ธฐ๋กํ•œ ํ›„ vi๋ฅผ ๋น ์ ธ๋‚˜์˜ด
:q! ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ณด๊ด€ํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒ
q ์ˆ˜์ •ํ•œ ํŒŒ์ผ์„ ์ €์žฅํ•˜์ง€ ์•Š๊ณ  vi ์ข…๋ฃŒ
e! ์ˆ˜์ •ํ•œ ๊ฒƒ์„ ๋ฌด์‹œํ•˜๊ณ  ๋‹ค์‹œ ํŽธ์ง‘์ƒํƒœ๋กœ

๐Ÿ“–๊ธฐํƒ€

๋ฌธ์ž ์„ค๋ช…
. ํ˜„์žฌ line
% ์ „์ฒด line
$ ํŒŒ์ผ ๋งจ๋ line
1,$ %
2,3 2 ~ 3 line

 

๐Ÿ“– vi/vim ๋‹จ์ถ•ํ‚คํ‘œ

 

๐Ÿ“– vim ์ด๋™ ๋‹จ์ถ•ํ‚คํ‘œ

 

๐Ÿ“– vim ๋ช…๋ น์–ด ๋‹จ์ถ•ํ‚คํ‘œ

 


§์ถœ์ฒ˜:

https://iamfreeman.tistory.com/entry/vi-vim-ํŽธ์ง‘๊ธฐ-๋ช…๋ น์–ด-์ •๋ฆฌ-๋‹จ์ถ•ํ‚ค-๋ชจ์Œ-๋ชฉ๋ก

 

vi /vim ํŽธ์ง‘๊ธฐ ๋ช…๋ น์–ด ์ •๋ฆฌ (๋‹จ์ถ•ํ‚ค ๋ชจ์Œ / ๋ชฉ๋ก)

vi /vim ํŽธ์ง‘๊ธฐ ๋ช…๋ น์–ด ์ •๋ฆฌ (๋‹จ์ถ•ํ‚ค ๋ชจ์Œ / ๋ชฉ๋ก) ๋ฆฌ๋ˆ…์Šค์˜ ๋Œ€ํ‘œ์ ์ธ ์—๋””ํ„ฐ์ธ vi ํŽธ์ง‘๊ธฐ์˜ ๋ช…๋ น์–ด๋“ค์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค. vi ์‹œ์ž‘ ๋ช…๋ น์–ด ๋ช…๋ น์–ด ์„ค๋ช… ์˜ˆ์ œ vi {ํŒŒ์ผ๋ช…} ํŒŒ์ผ์—ด๊ธฐ, ์ž‘์„ฑ vi tes

iamfreeman.tistory.com

https://ko.wikipedia.org/wiki/Vi

 

vi - ์œ„ํ‚ค๋ฐฑ๊ณผ, ์šฐ๋ฆฌ ๋ชจ๋‘์˜ ๋ฐฑ๊ณผ์‚ฌ์ „

์œ„ํ‚ค๋ฐฑ๊ณผ, ์šฐ๋ฆฌ ๋ชจ๋‘์˜ ๋ฐฑ๊ณผ์‚ฌ์ „. ๋‹ค๋ฅธ ๋œป์— ๋Œ€ํ•ด์„œ๋Š” VI ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•˜์‹ญ์‹œ์˜ค. vi(๋ธŒ์ด์•„์ด, )๋Š” Emacs์™€ ํ•จ๊ป˜ ์œ ๋‹‰์Šค ํ™˜๊ฒฝ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ๋ฌธ์„œ ํŽธ์ง‘๊ธฐ์ด๋‹ค. 1976๋…„์— ๋นŒ ์กฐ์ด๊ฐ€ ์ดˆ๊ธฐ BSD ๋ฆด๋ฆฌ

ko.wikipedia.org

https://namu.wiki/w/vi

 

vi - ๋‚˜๋ฌด์œ„ํ‚ค

ํŽธ์ง‘ ์ž์ฒด๋ฅผ ๋”ฐ๋กœ ํ•˜๋‚˜์˜ ๋ชจ๋“œ๋กœ ๊ตฌ์„ฑํ•˜์—ฌ ํ‚ค ์กฐ์ž‘์„ ํฌ๊ฒŒ ๋‹จ์ˆœํ™”์‹œํ‚จ ๊ฒƒ์ด ํŠน์ง•์ด๋‹ค. ์ผ๋ฐ˜ ํŽธ์ง‘๊ธฐ์—์„œ๋Š” ์ž…๋ ฅ๋ชจ๋“œ์™€ ํŽธ์ง‘๋ชจ๋“œ๊ฐ€ ๊ตฌ๋ถ„์ด ๋˜์–ด์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ํ…์ŠคํŠธ ์ž…๋ ฅ์— ์“ฐ์ด๋Š” ์•ŒํŒŒ๋ฒณ์ด

namu.wiki

 

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.