728x90
반응형

파일 관련 명령어

해당 파트에서는 파일 정보 출력, 이동, 복사, 삭제 등, 파일과 관련된 명령어를 다룬다.

-. ls

ls 명령어는 현재 디렉토리에 존재하는 파일의 리스트를 출력한다.

[user@localhost ~]$ ls

 자주 사용하는 옵션

ls 명령어에서 자주 사용하는 옵션은 –lrt 옵션과 –a 옵션이다.

-lrt 옵션

-lrt 옵션은 현재 디렉토리에 있는 파일의 세부 정보를 시간 역순으로 정렬해주는 옵션이다. 이중 –l 옵션은 세부 정보, -r 옵션은 역순으로, -t 옵션은 시간 순으로 정렬을 의미한다.

[user@localhost ~]$ ls -lrt

ls -lrt 옵션을 통해 출력한 세부 정보는 다음과 같은 의미를 가지고 있다. 파일 권한, 소유자 이름, 소유 그룹 이름은 파일 권한 설정 파트에서 후술한다.

-a 옵션

-a 옵션은 현재 디렉토리에서 숨겨진 파일, 디렉토리를 확인할 수 있는 명령어다.

[user@localhost ~]$ ls -a

이외에도 파일 사이즈를 Byte 단위에서 KB, MB 단위로 변경하여 출력할 수 있는 –h 옵션과 서브 디렉토리 내용을 확인할 수 있는 –R 옵션이 있다.

-.  mv

mv 명령어는 파일 또는 디렉토리의 위치를 이동하거나, 이름을 변경할 때 사용한다.

다른 디렉토리로 이동

[user@localhost ~]$ mv [file name] [directory Path]

파일 이름 변경

[user@localhost ~]$ mv [old file name] [new file name]

-. cp

cp 명령어는 파일 또는 디렉토리를 복사할 때 사용한다.

파일 복사

[user@localhost ~]$ cp [original file name] [copy file name]

디렉토리 복사

디렉토리 복사는 –r 옵션을 통해 복사 할 수 있다. 만약, -r 옵션 없이 디렉토리를 복사할 경우, 복사가 진행되지 않는다.

[user@localhost ~]$ cp –r [original directory name] [copy directory name]

자주 사용하는 옵션

cp 명령어는 디렉토리 복사를 하기 위한 –r 옵션 이외에도 파일이 있을 경우 강제로 덮어쓰도록 만드는 –f 옵션과 파일이 있을 경우 유저에게 복사 진행 여부를 물어보는 -i 옵션이 있다.

-. rm

rm 명령어는 파일이나 디렉토리를 삭제할 때 사용한다. 해당 명령어를 통해 디렉토리를 삭제할 경우, -r 옵션을 사용해야 한다. Linux 시스템은 파일을 삭제한 뒤 복구하는 것이 불가능하다. 사용에 주의할 것.

파일 삭제

[user@localhost ~]$ rm [file name]

디렉토리 삭제

[user@localhost ~]$ rm –r [directory name]

디렉토리 삭제 (2) 해당 명령어는 상당히 위험한 명령어 이므로 사용에 주의할 것.

파일, 디렉토리 제거 시, 소유권 이나 권한에 따라 user에게 해당 디렉토리를 지울 지 확인하는 경우가 있다. 삭제 여부를 확인하는 절차를 스킵하고 싶다면, -f 옵션을 추가하여 해결할 수 있다.

사용자 권한에 따라  remove  확인이 나올수 있다 .

[user@localhost ~]$ rm –rf [directory name]

 

자주 사용하는 옵션

rm 명령어에서 자주 사용하는 옵션으로는 –r, -i, -f 옵션이 있다. 이중, -r –f 옵션은 정말 위험한 옵션이니 사용에 주의할 것.

-. touch

touch 명령어는 파일, 디렉토리의 변경 시간을 업데이트 할 때 사용한다. 유저가 입력한 파일이 존재하지 않을 경우 새로운 파일을 생성한다.

새로운 파일 생성

[user@localhost ~]$ touch [file name]

파일, 디렉토리 시간 업데이트

[user@localhost ~]$ touch [file name]

-.  ln

ln 명령어는 대상 파일 또는 디렉토리의 바로가기 (Link file) 를 만드는 명령어다. ln 명령어를 통해 만들 수 있는 Link 종류는 Symbolic LinkHard Link가 있다. Hard Link 파일은 옵션 없이 ln 명령어를 사용할 경우 생성할 수 있다.

Symbolic Link 생성

Symbollic Link 파일은 Windows의 바로가기와 같은 기능을 하는 파일이다. 해당 기능을 통해 생성한 파일은 원본 파일과 똑같이 사용할 수 있다. Symbolic Link 기능은 주로 디렉토리 바로가기 기능을 만들 때 사용한다.

Symbolic Link 파일은 파일, 디렉토리 모두 생성할 수 있다. Symbolic Link를 통해 생성한 파일, 디렉토리는 original 파일, 디렉토리가 삭제된 경우, 더 이상 original 파일을 참조할 수 없다. Symbolic link 파일은 –s 옵션을 통해 생성할 수 있다.

[user@localhost ~]$ ln –s [original file name] [link file name]

파일 Symbolic Link

파일 Symbolic Link를 사용할 경우 실행, 읽기, 쓰기 진행 시, original 파일을 실행, 읽기, 쓰기 하는 것과 같은 결과를 얻을 수 있다.

디렉토리 Symbolic Link

Symbolic Link를 통해 생성한 디렉토리로 cd 명령어를 사용할 경우, original 디렉토리 위치로 이동한다.

Hard Link 생성

Linux 파일은 inode 라는 고유 번호를 통해 파일을 구분하는데, Hard Link inode 값이 같은 파일을 하나 더 만드는 기능이다. Hard Link를 통해 생성된 파일은 원본 파일과 동일한 파일이다. 디렉토리는 Linux 파일 시스템 구조의 한계로 인해 Hard Link 디렉토리를 만들 수 없다.

Hard Link를 통해 생성한 파일을 실행, 읽기, 쓰기 진행 시, original 파일을 실행, 읽기, 쓰기 하는 것과 같은 결과를 얻을 수 있다. 또한, Hard Link를 통해 생성한 파일은 original 파일이 지워져도 파일 내용이 사라지지 않는다.

아래 예시는 cp 명령어를 통해 복사한 파일과 Symbolic Link, Hard Link 기능을 통해 생성한 파일의 inode 값을 비교한 내용이다.

[user@localhost ~]$ ln [original file name] [link file name]

728x90
반응형

+ Recent posts