[Linux] vi/vim ํŽธ์ง‘๊ธฐ ์ž…๋ ฅ, ์ด๋™, ๋ณต์‚ฌ, ์‚ญ์ œ ๋ช…๋ น์–ด ์ •๋ฆฌ

2022. 12. 28. 17:17ยทCloud Engineering/Linux ๐Ÿง
728x90

1. vi ํŽธ์ง‘๊ธฐ๋กœ ๋“ค์–ด๊ฐ€๋Š” ๋ช…๋ น์–ด 

vi ํŒŒ์ผ์ด๋ฆ„ 
vim ํŒŒ์ผ์ด๋ฆ„ 

2. ์ข…๋ฃŒํ•˜๊ธฐ 

:q , :q! ์ €์žฅํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒ 
:wq, :wq! ์ €์žฅํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒ 

3. ์ด๋™ํ•˜๊ธฐ  

h j k l ์ขŒ ํ•˜ ์ƒ ์šฐ
ํ‚ค๋ณด๋“œ์˜ ํ™”์‚ดํ‘œ๋กœ๋„ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค. 

^ ํ˜„์žฌ ๋ผ์ธ์˜ ๊ฐ€์žฅ ์•ž์œผ๋กœ ์ด๋™ 
$ ํ˜„์žฌ ๋ผ์ธ์˜ ๊ฐ€์žฅ ๋์œผ๋กœ ์ด๋™ 


4. ํ™”๋ฉด ์ด๋™ 

H ๋ณด๊ณ  ์žˆ๋Š” ํ™”๋ฉด์˜ ๊ฐ€์žฅ ์œ„์ชฝ์œผ๋กœ ์ด๋™ 
M ๋ณด๊ณ  ์žˆ๋Š” ํ™”๋ฉด์˜ ์ค‘๊ฐ„์œผ๋กœ ์ด๋™
L ๋ณด๊ณ  ์žˆ๋Š” ํ™”๋ฉด์˜ ์•„๋ž˜๋กœ ์ด๋™ 

gg ํŒŒ์ผ ๋งจ ์œ„๋กœ ์ด๋™
G ํŒŒ์ผ ๋งจ ์•„๋ž˜๋กœ ์ด๋™ 

5. ํŒŒ์ผ ๋ผ์ธ์„ ์ง€์ •ํ•˜๊ธฐ  

:set nu ๋ผ์ธ ๋„˜๋ฒ„๋ฅผ ๋ณด์ด๊ฒŒ ์„ค์ •ํ•˜๋Š” ๋ช…๋ น์–ด 
:set nonu ๋ผ์ธ ๋„˜๋ฒ„๋ฅผ ๋ณด์ด์ง€ ์•Š๊ฒŒ ์„ค์ •ํ•˜๋Š” ๋ช…๋ น์–ด 

:n ์ด๋™ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ผ์ธ๋„˜๋ฒ„๋ฅผ n์— ์จ์ฃผ๋ฉด ํ•ด๋‹น ๋ผ์ธ์œผ๋กœ ์ด๋™ํ•จ (ex  :30 )

6. ํŒŒ์ผ ํŽธ์ง‘ํ•˜๊ธฐ 

1) ์ž…๋ ฅ 

i ์ปค์„œ ์œ„์น˜์—์„œ ์ž…๋ ฅ ์ง„ํ–‰
a ์ปค์„œ ์œ„์น˜ ํ•œ์นธ ๋’ค์—์„œ ์ž…๋ ฅ ์ง„ํ–‰
s ์ปค์„œ์œ„์น˜ ๋’ค์ชฝ์œผ๋กœ n๊ฐœ์˜ ๋ฌธ์ž๋ฅผ ์‚ญ์ œ ํ›„ ์ž…๋ ฅ ์ง„ํ–‰
o ์ปค์„œ ์œ„์น˜ ์•„๋ž˜ ๋ผ์ธ์„ ๋“ค์—ฌ์“ด ํ›„์— ์ž…๋ ฅ ์ง„ํ–‰

I ๋ผ์ธ์˜ ๊ฐ€์žฅ ์•ž์œผ๋กœ ์ด๋™ํ•ด์„œ ์ž…๋ ฅ ์ง„ํ–‰ 
A ๋ผ์ธ์˜ ๊ฐ€์ง• ๋’ค๋กœ ์ด๋™ํ•ด์„œ ์ž…๋ ฅ ์ง„ํ–‰ 
S ์ปค์„œ ์œ„์น˜๋กœ๋ถ€ํ„ฐ ์•ž์ชฝ์œผ๋กœ n๊ฐœ์˜ ๋ฌธ์ž๋ฅผ ์‚ญ์ œ ํ›„ ์ž…๋ ฅ ์ง„ํ–‰ 
O ์ปค์„œ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์œ„์˜ ๋ผ์ธ์„ ๋“ค์—ฌ์“ด ํ›„์— ์ž…๋ ฅ ์ง„ํ–‰ 

u : undo 

2) ๋ณต์‚ฌ (y)

yw ์ปค์„œ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ง€์ ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ๋‹จ์–ด๋ฅผ ๋ณต์‚ฌํ•œ๋‹ค.  
yy ์ปค์„œ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ง€์ ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ํ˜„์žฌ ๋ผ์ธ์„ ๋ณต์‚ฌํ•œ๋‹ค. 
y^
y$ 

3) ๋ถ™์—ฌ๋„ฃ๊ธฐ 

p ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๋’ค์— ๋ถ™์—ฌ๋„ฃ๊ธฐ 
    ex) root ๋ฅผ ๋ณต์‚ฌ ํ•œ ๊ฒฝ์šฐ์— ๋ถ™์—ฌ๋„ฃ๊ฒŒ ๋œ๋‹ค๋ฉด hrootello world ์ด๋Ÿฐ์‹์ด ๋  ๊ฒƒ์ž„. 
P ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๊ณณ์— ๋ถ™์—ฌ๋„ฃ๊ธฐ 

4) ์ž˜๋ผ๋‚ด๊ธฐ (c๋กœ ์‹œ์ž‘, cut์˜ ์ค„์ž„๋ง)

์ž˜๋ผ๋‚ด๊ธฐ ๋ช…๋ น์–ด๋Š” ์ž˜๋ผ๋‚ธ ํ›„ ๋ฐ”๋กœ ์ž…๋ ฅ์ด ์ง„ํ–‰๋œ๋‹ค. 
cw ๋‹จ์–ด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ž˜๋ผ๋‚ด๊ธฐ  
cc ํ˜„์žฌ ๋ผ์ธ์„ ์ž˜๋ผ๋‚ด๊ธฐ 

Last Line mode์—์„œ์˜ ๋ณต์‚ฌ, ์‚ญ์ œ, ์ž˜๋ผ๋‚ด๊ธฐ 
:n,my 
:n,mc
:n,md 

์—ฌ๊ธฐ์„œ n์€ ์ถœ๋ฐœ๋ผ์ธ, m์€ ๋งˆ์ง€๋ง‰ ๋ผ์ธ์„ ์˜๋ฏธํ•œ๋‹ค. 

5) ๋‹จ์–ด ์น˜ํ™˜ํ•˜๊ธฐ  

:n,ms/๋ฐ”๊พธ๊ณ ์žํ•˜๋Š” ๋Œ€์ƒ๋ฌธ์ž/๋ฐ”๊ฟ€๋ฌธ์ž/g 
ex)    :10,15s/nologin/hahaha/g 
๋ผ๋Š” ๋ช…๋ น์–ด๋Š” 10~15 ์ค„ ์‚ฌ์ด nologin ๋ฅผ hahaha๋กœ ์น˜ํ™˜ํ•œ๋‹ค. 

:n,ms/๋ฐ”๊พธ๊ณ ์žํ•˜๋Š” ๋Œ€์ƒ๋ฌธ์ž/๋ฐ”๊ฟ€๋ฌธ์ž/gc 
c๋ฅผ ๋’ค์— ๋ถ™์ด๋ฉด ํ•ด๋‹น ๋Œ€์ƒ๋ฌธ์ž๋ฅผ ๋ฐ”๊ฟ€๊ฒƒ์ธ์ง€ ์งˆ๋ฌธ์„ ํ•œ๋‹ค. 
ex)     :10,15s/nologin/hahaha/gc 
๋ผ๋Š” ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด hahaha(์œผ)๋กœ ๋ฐ”๊ฟˆ (y/n/a/q/l/^E/^Y)? ์ด๋ผ๊ณ  ์‰˜์ด ๋ฌผ์„ ๊ฒƒ์ด๋‹ค. 

y  ๋Š” ๋ณ€๊ฒฝ
n๋Š” ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์Œ
a ๋Š” ์ „์ฒด๋ฅผ ํ•œ๊บผ๋ฒˆ์— ๋ฐ”๊พธ๊ธฐ
q๋Š” ์ปค์„œ ์œ„์น˜์˜ ์ฐพ์€ ๋ฌธ์ž๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒ
l์€ ์ปค์„œ ์œ„์น˜์˜ ์ฐพ์€ ๋ฌธ์ž๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  ์ข…๋ฃŒ
^E๋Š” ctrl+e๋กœ ์œ„์ชฝ์œผ๋กœ ํ™”๋ฉด ์ด๋™
^Y๋Š” ctrl+y๋กœ ์•„๋ž˜์ชฝ์œผ๋กœ ํ™”๋ฉด์ด๋™ 

6) ์‚ญ์ œ 

x ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ๋’ค์ชฝ์œผ๋กœ ๋ฌธ์ž n๊ฐœ๋งŒํผ ์‚ญ์ œ -> nx (n์€ ์‚ญ์ œํ•  ๋ฌธ์ž์˜ ๊ฐœ์ˆ˜) , 6x ์ด๋Ÿฐ์‹์œผ๋กœ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 
X ์ปค์„œ๊ฐ€ ์œ„์น˜ํ•œ ์•ž์ชฝ์œผ๋กœ ๋ฌธ์ž n๊ฐœ ๋งŒํผ ์‚ญ์ œ 

dw ๋‹จ์–ด๋ฅผ ์‚ญ์ œํ•œ๋‹ค. (delete words) 
ndmw ๋กœ๋„ ์“ธ ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, nXm๊ฐœ์˜ ๋‹จ์–ด๋ฅผ ์‚ญ์ œํ•œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. ex) 4dw == 2d2w 

dd ๋ผ์ธ ์‚ญ์ œ ndmd ํ˜•์‹์œผ๋กœ๋„ ์“ธ ์ˆ˜ ์žˆ๋‹ค. nxm ๊ฐœ์˜ ๋ผ์ธ์„ ์‚ญ์ œํ•œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. 
D ์ปค์„œ์˜ ๋’ค์ชฝ์œผ๋กœ ๋ผ์ธ ๋‚ด์šฉ์„ ์‚ญ์ œํ•œ๋‹ค. nD ๋กœ๋„ ์“ธ ์ˆ˜ ์žˆ๋‹ค. ex) 5D

3. ์ข…๋ฃŒํ•˜๊ธฐ 

:q , :q! ๋Š” ์ €์žฅํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒ
:wq, :wq! ๋Š” ์ €์žฅํ•œ ํ›„ ์ข…๋ฃŒ (!๋Š” ๊ฐ•์ œ ์˜ต์…˜์ด๋‹ค.)

:w ๋Š” vi ํŽธ์ง‘๊ธฐ ์ž‘์„ฑ์ค‘ ํŒŒ์ผ ์ €์žฅ 
:w ํŒŒ์ผ์ด๋ฆ„ -> ์€ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ์ €์žฅ ex):w minjee ๋ผ๊ณ  ํ•˜๋ฉด ํ˜„์žฌ ํŒŒ์ผ์„ minjee ๋กœ ๋‹ค๋ฅธ์ด๋ฆ„์œผ๋กœ ์ €์žฅํ•˜๊ฒŒ ๋œ๋‹ค. 

 


! /bin/bash 

vi ์—๋””ํ„ฐ์—์„œ ์“ฐ๋‹ค๊ฐ€ ๋ช…๋ น์ฐฝ์œผ๋กœ ๋“ค์–ด๊ฐ 
๋ช…๋ น์ฐฝ์—์„œ ๋‹ค์‹œ  exit์„ ์น˜๋ฉด ๋‹ค์‹œ vi ํŽธ์ง‘๊ธฐ๋กœ ๋Œ์•„์™€์„œ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. 

728x90

'Cloud Engineering > Linux ๐Ÿง' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Linux] grep ๋ช…๋ น์–ด๋กœ ํŒŒ์ผ ๋ฌธ์ž ํŒจํ„ด ๊ฒ€์ƒ‰ํ•˜๊ธฐ  (0) 2022.12.28
[Linux] ๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„์—์„œ ํผ๋ฏธ์…˜ (permission) ๋ณ€๊ฒฝํ•˜๊ธฐ  (0) 2022.12.28
[Linux] ๋ฆฌ๋ˆ…์Šค ๋””๋ ‰ํ† ๋ฆฌ ์˜๋ฏธ  (0) 2022.12.27
[Linux] ๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด : ๋””๋ ‰ํ† ๋ฆฌ ํ™•์ธ  (0) 2022.12.27
CentOS ๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ  (0) 2022.12.27
'Cloud Engineering/Linux ๐Ÿง' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Linux] grep ๋ช…๋ น์–ด๋กœ ํŒŒ์ผ ๋ฌธ์ž ํŒจํ„ด ๊ฒ€์ƒ‰ํ•˜๊ธฐ
  • [Linux] ๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„์—์„œ ํผ๋ฏธ์…˜ (permission) ๋ณ€๊ฒฝํ•˜๊ธฐ
  • [Linux] ๋ฆฌ๋ˆ…์Šค ๋””๋ ‰ํ† ๋ฆฌ ์˜๋ฏธ
  • [Linux] ๋ฆฌ๋ˆ…์Šค ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด : ๋””๋ ‰ํ† ๋ฆฌ ํ™•์ธ
minjiwoo
minjiwoo
Data Engineering๊ณผ Cloud Native ๊ธฐ์ˆ ์— ๋Œ€ํ•ด Dive Deep ํ•˜๋Š” ํ”Œ๋žซํผ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ๋˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฝํ—˜๊ณผ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ๊ธฐ๋กํ•˜๋ฉฐ ์ง€์†๊ฐ€๋Šฅํ•œ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด ๊ฟˆ์ž…๋‹ˆ๋‹ค.
minjiwoo
minji's engineering note
minjiwoo
์ „์ฒด
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (613)
    • Data Engineering (42)
      • Apache Spark (11)
      • Databricks & Delta Lake (9)
      • Airflow (3)
      • SQL (6)
      • Trouble Shooting (2)
      • Hadoop (2)
      • MLOps (1)
    • Cloud Engineering (104)
      • AWS (23)
      • Linux ๐Ÿง (29)
      • Docker ๐Ÿณ (21)
      • Kubernetes โš™๏ธ (20)
      • Ansible (10)
    • Computer Science (87)
      • ๋„คํŠธ์›Œํฌ (9)
      • ์šด์˜์ฒด์ œ (25)
      • ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ (48)
      • CS ๊ธฐ์ˆ  ๋ฉด์ ‘ ์Šคํ„ฐ๋”” (3)
    • Programming Languages (27)
      • Python (17)
      • C์™€ C++ (10)
    • Backend (5)
      • Django (2)
    • ํ”„๋กœ์ ํŠธ (2)
      • ํ…Œํฌํฌ์ž„ํŒฉํŠธ (2)
    • iOS (11)
      • ๋ ˆ์ด๋ธ”๋Ÿฌ๋ฆฌ (2)
    • Algorithm (PS) (275)
      • LeetCode (6)
    • ๊ฐœ๋ฐœ์ผ๊ธฐ (30)
      • ๋‚ด๋ˆ๋‚ด์‚ฐ ํ›„๊ธฐ๐ŸŽฎ (3)
      • ๊ฐœ๋ฐœ์ž ์ทจ์ค€์ƒ (5)
      • Today I Learned (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

  • Hi there

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค
  • EC2
  • ansible
  • ํŒŒ์ด์ฌ
  • ๋ฐ์ดํ„ฐ์—”์ง€๋‹ˆ์–ด๋ง
  • dfs
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ์ŠคํŒŒํฌ
  • ํด๋ผ์šฐ๋“œ
  • linux
  • ์šด์˜์ฒด์ œ
  • python
  • Swift
  • ๋ฐฑ์ค€
  • ๋ฐฑํŠธ๋ž˜ํ‚น
  • docker
  • ์นด์นด์˜ค์ฝ”๋”ฉํ…Œ์ŠคํŠธ
  • SPARK
  • ๋ฆฌ๋ˆ…์Šค
  • ๋น…๋ฐ์ดํ„ฐ
  • ๋ฐ์ดํ„ฐ๋ธŒ๋ฆญ์Šค
  • AWS
  • ๋ฐ์ดํ„ฐ์—”์ง€๋‹ˆ์–ด
  • BFS
  • Leetcode
  • dp
  • Databricks
  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • Kubernetes

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

hELLOยท Designed By์ •์ƒ์šฐ.v4.5.2
minjiwoo
[Linux] vi/vim ํŽธ์ง‘๊ธฐ ์ž…๋ ฅ, ์ด๋™, ๋ณต์‚ฌ, ์‚ญ์ œ ๋ช…๋ น์–ด ์ •๋ฆฌ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.