LINUX

파일 관리 명령어(mv, locate)
  • 조회수 11,342
  • 작성일 2008-07-28
  •  
2. mv

(1) 설명: move의 약어로 파일 또는 디렉토리의 이름을 바꾸거나 위치를 이동시키는 명령. 도스의
          'ren'명령이나 'move'명령과 비슷하다.
(2) 사용법
   1) mv [option] old_name new_name => old_name을 new_name으로 바꾼다.
   2) mv [option] file(s) directory => file(s)을 directory로 옮긴다.
(3) option
   -f : 옮겨질 파일이 이미 존재하더라도 묻지 않고 덮어 쓴다. ('f'는  force의 약어)
   -i : 옮겨질 파일이 이미 존재하는 파일이면 덮어 쓸 것인지 물어본다.
   -b : 파일을 지우기 전에 백업본을 만든다.
   -u : 옮겨질 디렉토리에 구버전의 파일이 있는 경우에만 옮긴다.
(4) 사용예
   1) mv readme.txt /home/posein/data => readme.txt라는 파일을 /home/posein/data디렉토리로
                                        옮기라는 명령이다.
   2) mv /home/posein/pds /home/posein/data => /home/posein/pds라는 디렉토리를 /home/posein/da
                                              ta 라는 디렉토리명으로 바꿔라.
   3) mv aaa.txt bbb.txt => aaa.txt 파일을 bbb.txt파일로 바꿔라.
(참고) mv명령은 파일과 디렉토리의 이름을 바꾸거나 이동시키는 명령이다. 만약 대상이 되는 파일이
      같은 파일시스템(파티션)내에 있을 경우에는 파일 자체 내용에 대한 재배치는 하지 않고 파일의
      위치만 갱신시킨다. 만약 대상이 다른 파일시스템에 있을 때는 대상 파일시스템을 복사한 후에
      원본을 삭제한다. 결국 파티션이 하나인 파일시스템의 관점에서 보면 파일명의 변경과 다른
      위치로의 이동은 거의 동일한 작업이다. 결국 파일명을 변경하는 명령이 따로 필요하지 않다.

3. locate

(1) 설명 : 찾고자 패턴과 맞는 파일이나 디렉토리를 경로와 함께 서브디렉토리등 모두 찾아낸다.
           대상을 데이터베이스화하여 사용하므로 속도는 빠르나 updatedb명령어나 cron작업을 이용
           하여 데이터베이스를 갱신해야 한다. 실제적으로 접근해서 볼 수 있는 것들만 찾아서
           보여주므로 find명령에 비해 강력하지는 않다.
(2) 데이터베이스 갱신 : 리눅스에서 기본적으로 매일매일 업데이트 한다.
   1) /etc/cron.daily/slocate.cron &
   2) updatedb &
(3) 사용예
    [posein@www]$locate shadow
     => shadow라는 패턴이 들어간 파일이나 디렉토리들을 찾아준다.
(4) 참고 : 요즘 리눅스는 한층 보안적으로 강화된 slocate 명령은 사용한다. locate라는 명령을
           내려도 심볼릭링크로 실제적으로는 slocate 명령이 실행되는 것이다. 결과적으로는 같은
           명령이다.