OS/Linux - Ubuntu

[Linux - 리눅스] 파일 명령 사용법 등 파일 다루기 - cat, more, less, tail, cp, mv, rm

주누다 2015. 1. 3. 21:17
반응형

파일 다루기


파일 내용 연속 출력하기

 cat

- 기능 : 파일 내용을 출력

- 형식 : cat [옵션] 파일명 ...

- 옵션 : -n => 행 번호를 붙여서 출력

- 사용 예 : cat file1, cat -n file1 


화면 단위로 파일 내용 출력하기

more

- 기능 : 파일 내용을 화면 단위로 출력

- 형식 : more [옵션] 파일명 ...

- 옵션 : +행 번호 : 출력을 시작할 행 번호를 지정

- 사용 예 : more file1


- 'Space Bar' 키를 누르면 다음 화면이 출력

- 'Enter' 키를 누르면 한 줄씩 스크롤 됨.

- '/문자열'을 입력하면 해당 문자열을 찾아 이동

- 'q'키를 누르면 more 종료. 


개선된 화면 단위 파일 내용 출력하기

 less

- 기능 : 파일 내용을 화면 단위로 출력(앞뒤로 이동할 수 있음)

- 형식 : less 파일명 ...

- 사용 예 : less file1


- more 명령으로는 이미 스크롤되어 지나간 내용을 다시 볼 수 없음.

- 이를 개선한 것으로 파일 내용을 앞뒤로 스크롤하면서 이동할 수 있음.

동작 

한 줄씩 다음 행으로 스크롤함 

한 줄씩 이전 행으로 스크롤함 

Space Bar, Ctrl + F 

다음 화면으로 이동 

Ctrl + b 

이전 화면으로 이동 


파일 뒷부분 출력하기

tail

- 기능 : 파일의 뒷부분 몇 행을 출력함

- 형식 : tail [옵션] 파일명 ...

- 옵션 : 

 -> +행 번호 : 지정한 행부터 끝까지 출력

 -> -숫자 : 화면에 출력할 행의 수를 지정(기본 값은 10)

    => ex) tail -7 /etc/services

 -> -f : 파일 출력이 종료되지 않고 주기적으로 계속 출력(로그 같은 부분을 확인할 때 좋을듯)

    => ex) tail -f /etc/services


파일 복사하기

cp

- 기능 : 파일이나 디렉터리를 복사함

- 형식 : cp [옵션] [원본파일 또는 원본디렉터리(공백)타겟파일 또는 타겟디렉터리] 

- 옵션 : -i => 파일명2가 존재하면 덮어쓸 것인지를 물어봄

          -r => 디렉터리를 복사할 때 지정

- 사용예 : cp file1 file2, cp f1 f2 f3 dir1, cp -r dir1 dir2

두 인자가 모두 파일인 경우

- 두 번째 인자로 지정한 파일명이 존재하지 않는 파일인 경우 원본 파일을 복사하여 새로 만듬

- 이미 존재하는 파일이라면 원본 파일의 내용으로 덮어씀.


두 번째 인자가 디렉터리인 경우

- 첫 번재 인자는 파일, 두번째 인자는 디렉터리인경우

 파일을 해당 디렉터리 아래에 복사함(당연히 디렉터리를 미리 만들어져 있어야함)

- 파일을 다른 디렉터리에 복사할 때는 해당 디렉터리에 대해 쓰기 권한이 있어야함.


인자를 여러 개 지정하는 경우

- 첫 번째 인자의 자리에 파일명을 여러 개 지정할 수 있음.

- 두 번째 인자는 반드시 디렉터리이어야 함.


디렉터리 복사하기

- 첫 번째 인자와 두 번째 인자가 모두 디렉터리어야 함.

- 디렉터리를 복사할 때는 '-r'옵션을 사용해야함. 그렇지 않으면 오류 발생.


-i 옵션 사용하기

- '-i' 옵션을 사용시 두 번째 인자로 지정한 파일명이 이미 있는 경우

 복사할 것인지를 물음

- 'y'라고 답하면 덮어서 복사

- 'n'이라고 답하면 덮어쓰지 않음.


파일 이동하기

 mv

- 기능 : 파일을 이동함(또는 이름 바꾸기)

- 형식 : mv [옵션] [원본 파일 또는 원본 디렉토리(공백)타겟파일 또는 타겟 디렉터리]

- 옵션 : -i => 타겟 파일 

- 사용예 : mv file1 file2 

 파일을 파일로 이동하기

- 파일을 다른 파일로 이동하는 것은 결국 원본 파일명을 다른 파일명으로 바꾸는 작업.

- 두 번째 인자로 지정한 파일이 존재하는 파일이면

 원본 파일의 내용을 덮어쓰고 기존의 내용이 삭제됨.

- 두 번째 인자로 지정한 파일이 존재하지 않는 파일이라면 새 파일이 생성.


파일을 다른 디렉터리로 이동하기

- 이동할 경로를 디렉터리만 지정하는지, 디렉터리와 파일명을 함께 지정하는지에 따라

 이동되는 파일의 이름이 달라질 수 있음.

- 두 번재 인자에 파일명을 함께 지정할 경우 파일이 지정한 디렉터리로 이동하면

 파일명도 바뀌게 됨.

- 쓰기 권한이 없는 디렉터리로 파일을 이동할려고 하면 오류 발생.


여러 파일을 디렉터리로 이동하기

- 첫 번재 인자에 파일명을 여러 개 지정하면 되는데,

 이 때 두 번째 인자는 반드시 디렉터리이어야만 함.


'-i' 옵션 사용하기

- 두 번째 인자에 지정한 파일명이 기존에 있는 파일일 경우

 덮어서 이동할 것인지 물어봄.


디렉터리를 디렉터리로 이동

- 인자를 모두 디렉터리로 지정하면 디렉터리가 이동함.

- 두 번째 인자가 기존에 있던 디렉터리가 아닐경우, 디렉터리의 이름이 변경됨

- 두 번째 인자가 기존에 있던 디렉터리일 경우, 

 원본 디렉터리가 두 번째 인자로 지정된 디렉터리 아래로 이동함.


파일 삭제하기

 rm

- 기능 : 파일을 삭제

- 형식 : rm [옵션] 파일명 또는 디렉터리명

- 옵션 : 

 -> -i : 지정한 파일을 삭제할 것인지를 물어봄

 -> -r : 지정한 디렉터리를 삭제함.

- 사용예 : rm file, rm -r dir 

- rm 명령을 사용하면 삭제할 것인지 물어보지도 않고, 윈도우처럼 파일이 휴지통에 담기는 것도 아님.

 그냥 바로 삭제가 되어 복구할 수 없음. 주의 필요.


'-i' 옵션 사용하기

- 'cp'나 'mv'처럼 '-i' 옵션을 지정하고 'rm'명령을 사용하면 삭제할 것인지를 물어봄.

- 'y'라고 답하면 삭제.

- 'n'이라고 하면 삭제하지 않음.


디렉터리 삭제하기

- rm 명령으로도 디렉터리를 삭제할 수 있음(디렉터리도 파일)

- 'rmdir' 명령으로도 디렉터리를 지울 수 있지만 디렉터리가 비어있어야함.

- 'rm -r' 명령으로 하면 디렉터리가 비어있지 않더라도 디텍터리를 삭제함.

- 디렉터리를 삭제할 때도 '-i' 옵션을 사용할 수 있음.

 삭제를 하게되면 윈도우처럼 복구할 수 없으므로 '-i'옵션을 사용하는 것이 좋음.

ex) rm -ri dir



반응형