날짜와 시간 출력

$ date



로그인된 사용자 확인

$ who



로그인된 나자신 보는 법

$ who am i



문자 출력: echo



$ echo thi is a test

$ echo

$ echo one      two              three

->one two three // 단어 사이 추가공백 줄여준다.




>파일작업

디렉터리 저장된 파일 확인

$ ls  


파일 내용출력

$ cat


파일 단어 수 계산. 파일에 포함된 라인수, 단어수, 문자 수

$ wc filename


$ wc -l    //line 라인수

$ wc -c //문자수

$ wc -w //단어수



파일복사

$ cp names saved_filenames



파일이름변경

$ mv primaryfiles changedfilename



파일삭제

$ rm removefilename



>파일 디렉토리

/ = root directory를 칭함.


작업 Directory 출력

$ pwd



디렉토리 변경

$ cd documents  // 디렉토리 변경



$ cd .. 한단계 위 디렉토리로 감.



$ cd ../.. 2단계 위로



$ ls directoryname 해당 디렉토리 목록을 얻을 수있음

$ ls dir/name/blabal  이런거 역시 가능.



l(문자) 특정 디렉터리 파일에 대해 좀더 상세하 ㄴ설명 제공한다.



$ ls -l



특정 파일을 다른 디렉토리로 복사

$ cp pro/we to/destin



혹은

$ cp pro/we to/we  // 두파일이 서로 다른 디렉터리에 있기에 가능 



혹은 아래처럼 복사되는 파일명을 생략하면 자동으로됨

$ cp pro/we foldername



디렉터리 간 파일이동

$ mv memos/my pro/plan



혹은 이름 안바꾸면서 그대로 이동하려면 폴더이름만 적어주면 자동으로됨

$  mv memo/plan dest



파일 링크: ln 커맨드

$  ln from to

해당 링크는 from 파일을 to 파일로 링크한다.    //(from - 현재존재하는, to- 새로 이름지을 )



$ ln wb wobo

파일 wb를 wobo이름으로 링크.



ls하면

wb, wobo 가 들린다.



$ ls -l 을하면 2번째열에 링크수가 표시된다.

링크중 하나만 삭제하면 다른 한놈의 링크수는 1로 변하게된다.



$ ln /users/jh/wb .  이런식으로도 가능하다.



심볼릭 링크

$  ln -s from to    

심볼릭 링크는 원본 파일을 가리킨다.


ls결과 첫번째 무자로, l이 나오면 심볼릭 링크이다.


$ ls -Ll   심볼릭 링크가 가리키는 파일에대한 정보 목록을 가져올 수 있다.


심볼릭 링크가 가리키는 파일을 삭제하면, 심볼릭 링크는 무효화되지만, 삭제되지는 않는다.



디렉터리 삭제:rmdir 커맨드


$ rimdir /bla/blaaa


비어있지않다면 성공한다.


모든파일을 지우려면


$ rm -r dir


$ rm -rf dir  삭제작업 강제로 빠르게 진행됨.



*

별표

패턴 *, 와일드 카드 개념으로 사용된다.

*t1


chap*


? 는 한문자

?? 는 두문자 아무거나의 개념으로 사용된다.


$ echo ?

a b c

$ echo a?

aa

$  echo ??

aa bb cc

$  echo ??*  (2문자이면서 그이사 ㅇ아무거나 모두 출력)

aa aax alice bb cc report1 report2 report3



단일 문자를 일치시키는 방법.

[0-9] 0qnxj 9Rkwl dlfcl.

[f-z] f부터 z까지

[a-np-z]* a에서 n또는, p부터 z까지 문자로 시작하는 모든파일


[ 다음에 오는 첫번째 문자가 !와 일치하면 반전된다. 즉, 대괄호 안에 있는 문자를 제외한 모든 문자가 일치

[!a-z] 소문자를 제외한 모든 문자


*[!o] 소문자 o로 끝나지 않는 모든 파일과 일치시킨다.


echo a* a로시작하는 파일 이름 출력

cat *.c .c로 끝나느 모든 파일 출력

ls x* x로 시작하는 모든 파일이름 출력

rm * 모드 지우기

echo a*b a로시작하고, b로 끝나느 모든 파일 이름 출력

ls [a-z]*[!0-9] 소문자로 시작하고, 숫자로 끝나지 않는 파일을 출력.

참고)

쉘로 나가지않고 외부 명령어를 실행하고싶은경우


ex)   :! mkcscope.sh

!를 붙여주고 쓰면된다.


파일열기 

:edit 

파일저장하기 

:write :save :update 

창분할 

:sp :vs 

탭페이지

:tabedit :tabnew :tabclose :tabnext :tabprevious 

탐색 기능 

:edit 

파일명인식 

gf 

파일 목록

:files 혹은 :ls 

인코딩 형식 

:set fencs=... 




파일 버퍼 관련 명령어

 :e 파일명

파일을 편집용으로 엽니다. 

파일명 모르면 tab을 누르면 현재 디렉터리 파일을 하나씩 보여줍니다. 

ctrl ^ 

이전파일을 엽니다 

:e # 

 

:[#]n 

여러 파일이 열려 있을 때, 다음 파일로 이동합니다.

#에 숫자를 넣으면 해당 숫자만큼 반복합니다. 

:[#]N 

:n의 반대 방향으로 이동합니다. 


vim에서 다른파일을 여는 명령어는 :e file이름 입니다.

이기능을 통해서 A라는 파일을 작업중 :e b.txt 명령을 통해 b.txt 를 열수있습니다.

단 여기서 이동전, 저장해놓고 꼭 갑시다~!


또 여기서 CTRL ^ 을 누르면 이전에 편집했던 A라는 파일로 왔다갔다 되돌아 갈 수 있습니다.





파일을 저장하는 다양한 명령어

 :w filename

파일을 저장합니다 

:sav filename 

현재 파일을 다른 이름으로 저장합니다. 

:up 

변경 사항이 있는 경우에만 저장합니다. 

:x 

vim을 종료하면서 변경사항이 있는 경우에는 저장합니다. 





창분할 명령어 정리

 #sp [파일명]

상하로 창을 분할합니다. 파일명을 생략하면 현재 파일을 의미합니다. 

 #vs [파일명]

좌우로 창을 분할합니다. 

 #new 

상하로 분할하고, 위쪽에 새로운 창을 만듭니다. 

 #vnew 

좌우로 창을 분할하고, 왼쪽에 새로운 창을 만듭니다. 






창사이클 이동하는 명령어

 ctrl-W ctrl - 방향키

ctrl - w 방향키

방향키에는 h, j, k, l이나 화살표 키를 사용할 수 있습니다. 

 

 

 

 





분할된 창의 크기를 조정하는 명령어

 ctrl-W = 

모든창의크기를 동일하게 조정합니다. 

 

 

 

 





탭으로 열기

:tabedit hello.c


새파일을 탭으로 열고 싶다면 

:tabnew 파일이름 을 사용하면됩니다.


탭을 닫고싶다면

:tabclose





탭이동명령

 [#]tabn

다음 탭으로 이동하며, 일반모드의 gt와 동일 

 [#]gt 

#에 숫자를 지정하면 탭번호가 지정 

 [#]tabp[revious] 

이전탭으로 이동하며 일반모드의 gT와 동일 

 [#]gT 

#에 숫자를 지정하면 반복수가 지정됩니다. 

 :tabm[#] 

#번째 탭으로 현재탭을 이동시킵니다. (0부터 시작)

#이 생략되면 가장 오른쪽으로 이동시킵니다. 

 

 

 

 






탭 생성과 종료 명령

 :[#]tabe

#번째 탭에 파일을 엽니다. #을 생략되면 현재 탭 뒤에 생성됩니다.

번호는 0부터 시작합니다. 

 :[#]tabnew 파일명 

#번째 위치에 비어있는 탭을 만듭니다.

 :[#]tabc 

#번째 탭을 닫습니다. #을 생략하면 현재 탭을 닫습니다. 




VIM 디렉토리 탐색하기

윈도 탐색기처럼 vim에도 디렉토리 리스트를 보면서 파일을 선택할 수 있습니다.

netrw라는 기능이 있습니다. 기능은 간단히 :e directory 로 실행하면 됩니다.


예를 들어 :e . 명령은 






netrw의 주요 단축키

 <Enter>

파일을 현재 창에 열어 줍니다. 

 i

파일표시 방법을 변경합니다. 

 s 

정렬 방식을 바꿔줍니다(이름순, 시간순, 크기순) 

 o 

커서 위치의 파일을 수평분할된 새창으로 열어줍니다. 

 v 

커서 위치의 파일을 수직 분할된 새창으로 열어줍니다. 

 p 

커서 위치의 파일을 미리보기 창으로 열어줍니다. 

 P 

커서위치의 파일을 바로이전에 생성한 창에 열어줍니다. 

 R 

파일명을 바꿉니다 

 t 

새로운 탭으로 분할아여 열어줍니다. 

 - 

상위 디렉터리로 이동합니다. 





버퍼 목록에 표시되는 기호

 %

현재 편집중인버퍼 

바로이전에 열었던 버퍼 혹은 다음에 열도록 예비된 버퍼<CTRL-^>를 누르면 #이 표시된 파일이 열립니다. 

활성된 버퍼(현재 화면에 보이는 버퍼) 

창 분할 기능을 쓰는 경우에는 여러 파일에 a표시가 나타납니다.

변경된 부분이 있는 버퍼 






버퍼 관련 명령어들

 :ls

 파일 목록을 확인합니다. 

 :buffers 

 

 :files 

 

 :n {pattern} 

지정된 pattern으로 파일을 검색하여 목록에 추가하고 첫번째 검색된 파일을 열어줍니다. 

 {N} CTRL-^ 

{N} 번째 파일 목록을 엽니다. 

 :e #{N} 

 

 :Of 

현재 버퍼를 목록에서 제거합니다.

연결된 파일이있다면 해제하여 [No name]버퍼로 만듭니다. 

 :r 파일 

파일을 끼워 넣습니다. 






본문의 파일명을 인식해서 열어주는 명령어

 gf

커서 위치의 파일명을 인식해서 열어줍니다. 

 <CTRL-W> f 

커서 위치의 파일명을 분할된 창에 열어줍니다. 

 <CTRL-W> gf 

커서 위치의 파일명을 탭에 열어줍니다. 




+ Recent posts