MAC 혹은 리눅스를 활용하시는 분들은 대부분 아실것으로 생각합니다.
제가 그래도 꼭 필요한 것들로 추려서 알아보도록 하겠습니다.
1. 무료 터미널 프로그램
터미널 프로그램은 다양하게 존재합니다. 마치 우리가 문서를 작성할때, MS사의 'word'를 사용하거나 한컴오피스의 '한글 시리즈'를 사용하거나 혹은 '메모장'을 사용하거나 다양한 문서 편집기를 활용할 수 있듯 리눅스상에서도 다양한 터미널 프로그램이 존재합니다.
1) putty
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Download PuTTY: latest release (0.73)
This page contains download links for the latest released version of PuTTY. Currently this is 0.73, released on 2019-09-29. When new releases come out, this page will update to contain the latest, so this is a good page to bookmark or link to. Alternativel
www.chiark.greenend.org.uk
가장 많이 사용하는 프로그램이지만 설정과 접속시 다소 옛날 방식입니다.
2) TeraTerm
https://ttssh2.osdn.jp/index.html.en
Tera Term - Terminal Emulator for Windows
Tera Term is a terminal emulator running on Windows. It supports telnet/ssh/serial connection.
ttssh2.osdn.jp
한글지원도 가능하며 비교적 간단한 설정으로 접속가능합니다. 하지만 크기 조절시 현재 보여지는 화면이 초기화되는 단점이 존재 합니다.
3) MobaXTerm
https://mobaxterm.mobatek.net/
MobaXterm free Xserver and tabbed SSH client for Windows
The ultimate toolbox for remote computing - includes X server, enhanced SSH client and much more!
mobaxterm.mobatek.net
FTTP 접속 지원과 같이 다양한 부가기능과 대부분 필요한 기능을 무료로 사용가능합니다.
더욱 다양한 프로그램이 존재하지만 위 프로그램들로도 충분합니다.
2. vi 명령어
1) 편집(edit) 모드와 읽기(read) 모드
보통 Windows의 '메모장'은 편집/읽기 이런 모드가 따로 존재하지 않고, 그냥 편집이 가능합니다. 하지만 vi 편집기는 '편집'모드와 '읽기'모드에 따라 같은 명령어도 다르게 작동하기 때문에 항상 구분을 해야합니다. 보통 '편집'모드와 '읽기'모드는 터미널 창 하단에 보여집니다. 'ESC'키를 누르면 기본적으로 '읽기'모드가 활성화 되고 편집모드를 활성화 하려면 'i' or 'a' 를 입력하면 '편집'모드가 활성화 됩니다.
[읽기모드]
ESC
[편집모드]
소문자 i 혹은 a
이때, 'i'는 커서가 있는 곳에서 바로 바로 편집을 하겠다는 의미이고 'a'는 커서바로 다음칸에서 편집을 하겠다는 의미로 쓰입니다.
2) 가장위로 가장아래로
보통 코드가 길게 되어 있으면 사람의 특성상 소스의 가장마지막부분을 확인하고 싶고 다시 소스처음부분으로 가고싶어집니다. 이것은 아래와 같은 명령어로 가능합니다.
[가장아래로]
ESC 누르고 (읽기모드에서)
Shift + g
쉬프트 + 소문자 g 를 입력하면 가장 아래를 보여줍니다.
[가장위로]
'ESC' 누르고 (읽기모드에서)
g
소문자 g 를 입력하면 가장 위를 보여줍니다.
3) 찾기
windows에서 사용하는 대부분의 프로그램에서 특정 문자를 찾기 위해서는 'Control + F' 를 사용합니다. 하지만 리눅스에서는 두가지 방법이 존재합니다.
[커서를기준으로 아래로 찾을때]
/ 입력후 찾고자 하는 단어 입력후 Enter를 눌러가면서 확인
[커서를기준으로 위로 찾을때]
? 입력후 찾고자 하는 단어 입력후 Enter를 눌러가면서 확인
예를들면, name 이라는 단어를 찾고자 할때 /name 이렇게 입력하면 아래방향으로 찾는것이고
?name 이렇게 입력하면 위방향으로 찾는것입니다.
4) 복사붙여 넣기
기본적으로 여러방법이 있는데, Windows에서 복사하고자하는 대상을 마우스로 블록지정을 해서 Control+C로 복사를 하고 다시 마우스 커서를 붙여넣고자 하는곳으로 가서 Control + V 로 복사 붙여넣기를 진행합니다. 이와 똑같은 방법을 리눅스에서는 아래와 같이 하시면 됩니다.
[복사할때]
1) 한칸씩 복사하고자 할 경우
(읽기모드에서) contorl + v 입력후 복사하고자하는 문자들을 블록으로 지정
이후 소문자 y를 누르면 해당 블럭이 복사.
2) 한줄씩 복사하고자 할 경우
(읽기모드에서) Shift + v 입력후 복사하고자하는 문자들을 블록으로 지정
이후 소문자 y를 누르면 해당 블럭이 복사.
[붙여넣을떄]
1) 혹은 2)를 진행한 뒤에 p를 누르면 해당 불록지정된 문자들이 붙여넣어 집니다.
그렇다면 당연히 Control + z 처럼 '뒤로가기' 혹은 '앞으로가기'도 알아야 겠죠?
5) 뒤로가기와 앞으로가기
먼저 이 뒤로가기 개념은 control + z 와 똑같습니다. 하지만 앞으로가기 개념은 조금다릅니다. 앞으로가기 개념은 취소했던것을 다시원상복귀한다는 개념으로 사용되기 때문에 한번 취소했던것을 원상복귀시켜준다는 개념으로 자신이 삭제한 문자를 원상복귀한다는 개념이 아닙니다. 삭제한것을 다시 돌리려면 취소하면 되기 때문에 역시 control + z로 복구시키면 됩니다. 하지만 취소한것을 다시 원상복귀한다는 개념은 단 한번밖에 동작하지 않습니다.
[뒤로가기]
u
소문자 u를 누르면 그냥 주구장창 뒤로가집니다. 그래서 주의가 필요합니다.
[뒤로가기 한것을 다시 원상복구 시키기]
control + r
보통 딱 한번 동작하기 때문에 잘 사용하셔야 합니다.
6) 삭제하기
여러방법으로 삭제가 가능합니다.
[한줄전체삭제]
(읽기모드에서) dd
[한글자삭제]
(읽기모드에서) x
[코드블럭삭제]
(읽기모드에서) 코드블럭지정후 d
보통 요즘은 그냥 'Backspace'누르면 편집모드에서도 바로 삭제가 가능합니다.
하지만 터미널종류에 따라 이 기능이 가능하도록 '설정'해야 하는 경우가 존재합니다.
7) 특정문자 바꾸기
자 예를들어서 아래와 같은 txt 파일에서 111을 ttt로 바꾸고 싶다? 어찌 해야 할까요?
(test.txt)
111
222
333
444
555
666
777
888
999
101010
111111
121212
131313
141414
151515
161616
171717
181818
191919
202020
[전체 111을 모두 ttt로 바꾸고자 할 경우]
(읽기모드에서)
:%s/111/ttt/g
[전체 111을 모두 ttt로 바꾸는데 하나하나 확인하면서 바꿀경우]
(읽기모드에서)
:%s/111/ttt/gc
그리고 블록으로 지정되었을때, y를 누르면 바뀌고
n을 누르면 스킵한다.
솔직히 이 두개만 알아도 된다.
자 근데 이 치환이란게 그렇게 쉬운것 만은 아니다. 예를 들어 문서에 특수문자가 포함된경우라면 이게 사람 골때리게 한다. 특수문자를 치환하고자 할경우 그문자 전에 이녀석은 특수문자입니다! 라고 vi 편집기에 알려줘야 하는데 '역슬러쉬'를 그문자전에 입력하면 된다. 여러개가 있으면 문자시작전마다 '역슬러쉬'를 입력해주면 된다. 조금더 깊이 들어가면 뭐 메타문자이니 정규식표현이니 이런표현이 나오는데, 그런건 그떄그때 찾아서 사용하면 된다.
( 솔직히 shell script 로 바꾸지 않을경우는 그렇게 필요하지는 않다. sed 에 대해서는 shell script와 연관성이 많기 때문에 그때 작성하도록 하겠다.)
뭐 이정도면 얼추 기본적인 편집기능은 알아본것 같다. 이동키야 방향키로도 요즘전부 가능하니까 예전처럼 무식하게 <H,J,K,L> 이걸로 안써도 된다. 간혹 예전분들은 저걸로 이동키로 사용하는데.. 우리가 무슨 리눅스만 쓰는것도 아니고.. 그냥 방향키로 쓰도록 하자.
특수기능 몇개 추가로 알려드리면
1) 번호표시
:set nu
nu 대신 number 써도 되는데 그냥 nu 써라
2) 번호표시 지우기
:set nonu
nonu 대신 nonumber 써도 되는데 그냥 nonu 써라
3) 하일라이트표시
:set hls
hls 대신 hlsearch 써도 되는데 그냥 hls 써라
4) 복사 붙여넣기 할때, 계단현상 없애기
:set paste
이게 복사여러번 할때마다 계속 해줘야 함
:set paste!
뒤에 느낌표 붙이면 계속 사용가능함.
솔직히 이정도면 된다.
다른걸 사용할줄 알면 이미 이딴블로그 안봐도 다 할줄알기에...
혹시라도 리눅스 명령어를 알고싶다면 아래에서 확인바람
https://issueguide.tistory.com/46
리눅스 기본 명령어
리눅스 기본명령어는 정말 기본이다.. 내가 볼려고 정리한다. 너무 기본적인것은 넘어가려고 했으나, 그런게 어딨나? 안쓰면 까먹는거지.. 되도록이면 Windows 와 비교하면서 써놓으면 이해가 쉽게 될것 같다. 사..
issueguide.tistory.com
'GuideBook' 카테고리의 다른 글
운동에 대한 동기부여가 필요하신분 자기합리화 금지 (0) | 2020.01.20 |
---|---|
리눅스 Bash Shell 사용법 (0) | 2020.01.17 |
리눅스 기본 명령어 (0) | 2020.01.17 |
역사적 변동성 계산방법 (0) | 2019.12.26 |
장례식 이후 절차 ( 사망신고절차, 상속세, 재산분할 ) (0) | 2019.08.06 |