코드네임 :

[Linux] 2. 파일 다루기 본문

⚙️Computer System/Linux

[Linux] 2. 파일 다루기

비엔 Vien 2023. 9. 27. 20:45

리눅스 파일 종류

일반 파일 (ordinary file)

- 데이터를 가지고 있으면서 디스크에 저장된다

- ls -l 에서 파일 유형 : -

 

디렉토리 (directory) / 폴더 (folder)

- 디렉토리 (폴더) 자체도 하나의 파일로 한 디렉토리는 다른 디렉토리들을 포함함으로써 계층구조를 가진다

- 부모 디렉토리는 다른 디렉토리를 서브 디렉토리로 갖는다

 - . : 현재 디렉토리

- .. : 부모 디렉토리

- ls -l 에서 파일 유형 : d

 

특수 파일 (special file)

- 물리적인 장치에 대한 내부적인 표현)

- 키보드(stdin), 모니터(stdout), 프린터 등도 파일처럼 사용

- ls-l에서 파일 유형 : b, c

 

심볼릭 링크 (symbolic link)

- 바로가기 파일

- ls -l 에서 파일 유형 : l

 

소켓 파일 (socket file)

- 네트워크 통신을 위한 파일

- ls -l 에서 파일 유형 : s

 

네임드 파이프 (named pipe)

- 프로세스간 통신을 위한 파일

- ls -l 에서 파일 유형 : p

 


cat

cat (옵션) 파일명

( )은 괄호안에 있는건 생략해도 된다는 의미인듯

 

- 간단한 파일보기 명령으로, 짧은 파일에 적합

 

옵션

-n : 행 번호 출력

 


more

more (옵션) 파일명

-파일의 내용을 한 화면 씩 출력

 

옵션

+ 행번호 : 지정한 행부터 출력

 

명령어

명령어 기능
space키 다음 페이지
Enter키 행단위 스크롤
b 이전 페이지 
q 종료
/문자열 문자열 찾기

 


 

tail

tail (옵션) 파일명

- 파일의 마지막 부분 출력

 

옵션 

-숫자 : 화면에 출력할 행 수 (default 값은 10)

-f : 파일 출력이 종료되지 않고 주기적으로 반복 출력 (종료는 ^C로)


파일 복사 : cp

cp (옵션) 원본파일명 복사파일명

- 특정 파일이나 디렉토리를 다른 이름으로 복사

 

옵션

-i : 파일을 덮어쓸 때 경고 메시지 출력

-r : 디렉토리 복사

 

사용형식

사용 형식 동작
cp 파일1 파일2 파일1을 파일2로 복사
cp 파일들 디렉코리 파일들을 디렉토리 밑에 같은 이름으로 복사
cp -r 디렉토리1 디렉토리2 디렉토리1을 디렉토리2로 복사
디렉토리 1의 파일도 모두 복사됨

 


 

파일 삭제 : rm

rm (옵션) 파일명/디렉토리명

- 지정한 파일이나 디렉토리를 삭제

- 되돌리기 불가

 

옵션 

-i : 확인 후 삭제 (y로 응답해야 삭제)

-f : 무조건 삭제

-r : 디렉토리 삭제

 


 

파일 이동 : mv

mv (옵션) 원래이름 새이름

- 파일 이름을 바꾸거나 이동

 

옵션

-i : 확인 후 이동

 

사용형식

사용 형식 동작
mv 파일1 파일 2 파일1의 이름을 파일2로 바꿈
mv 파일명들... 디렉토리 지정한 파일들을 디렉토리로 옮김
mv 디렉토리1 디렉토리2 디렉토리2가 존재하면 디렉토리1을 디렉토리2 밑으로 이동,
아니면 디렉토리1의 이름을 디렉토리2로 바꿈

 


 

파일 링크

ln (옵션) 원래이름 새이름

- 하나의 파일에 새로운 이름을 붙임

- 경로를 다르게 지정할 수 있음

 

옵션

-s : 심볼릭 링크 파일 생성 (윈도우의 바로가기 아이콘처럼)


복사(cp)와 링크(ln)의 차이는?

 

 


파일 생성 및 수정시간 변경 : touch

touch (옵션) 파일

- 지정한 파일이 존재하지 않으면 생성, 존재하면 현재 시간 또는 지정한 시간으로 시간 변경

 

옵션

-a : 접근시간만 변경

-c: 지정한 파일이 없는 경우 새로 생성 X

-m : 수정시간만 변경

-r ref_file : 시간을 파일에서 읽음

-t [[CC]YY]MMDDhhmm[.ss] : 시간을 직접 입력

 


 

ls -l, -lu, -lt, -ltu 비교

명령어 공통 보여주는 시간 출력 순서
ls-l 자세한 형태로 출력 수정시간 이름
ls -lu 접근시간 이름
ls -lt 수정 시간 수정 시간
ls -ltu 접근 시간 접근 시간