리눅스 파일검색 폴더압축 복사/이동

OS/리눅스 & 유닉스 2011. 1. 6. 17:32

간단 정리 - 리눅스 파일검색 폴더압축 복사/이동  
※ 파일 및 디렉토리검색

find 명령으로 파일이 아닌, 디렉토리를 검색하려면 명령어 맨 끝에 "-type d" (따옴표 제외) 라는 옵션을 붙여 주어야 합니다.

가령 하드 전체에서 즉 루트 디렉토리 아래에서, et 로 시작하는 모든 디렉토리를 찾으려면

find / -name 'et*' -type d

이렇게 합니다. 위의 명령어에서 "/" 는 루트 디렉토리 즉 최상위 디렉토리를 의미합니다.

※ 압축


압축 tar cvf sample.tar.gz 압축대상디렉토리


- tar 유틸리티는 파일과 디렉토리를 하나의 파일로 묶어주는 아카이브를 생성해준다. tar 자체에 압축 기능이 없기 때문에 옵     션에 -z 나 -j를 주어 외부에서 gzip, bzip2 명령어를 실행해야합니다.

[옵션]

 cf : 아카이브 생성

 v : 생성 또는 풀기 과정 보여주기

 xf : 아카이브 파일 풀기

 r : 파일 및 디렉토리 추가

 u : 아카이브된 파일과 새로운 디렉토리 내의 파일과 비교하여 최근의 파일을 아카이브에 추가

 t : 풀지 않고 tar 안에 있는 파일, 디렉토리 확인

 z : 아카이브 파일을 gzip 를 이용하여 압축, 풀기에 사용됨

 j : bzip를 이용


※ 이동/복사


ex1)

/home/user01/somefile.c 파일을 /usr/local/src 디렉토리에 넣어라.

mv /home/user01/somefile.c /usr/local/src

cp /home/user01/somefile.c /usr/local/src

ex2)

/home/user01/src 디렉토리 속에 있는 모든 파일을 /usr/local/src 디렉토리에 넣어라.

mv /home/user01/src/* /usr/local/src

cp /home/user01/src/* /usr/local/src

ex3)

/home/user01/src 디렉토리를 통째로 /usr/local/ 디렉토리에 넣어라.

mv /home/user01/src /usr/local

cp -R /home/user01/src /usr/local


 - -a 옵션 : 복사대상 원본파일의 속성( attribution ) 과 링크정보등을 그대로 유지하면서 복사하는 옵션임. cp 명령어 사용시 -dpR 옵션을 함께 사용한 것과 같은 역할을 함.


 - -b 옵션 : 복사하고자 하는 파일이 동일한 이름으로 이미 그 위치에 존재하고 있을 경우, 덮어쓰기 또는 원본을 지우고 복사할 경우에 원본파일의 복사본을 만들어 둠.

 - -f 옵션 : 복사대상파일이 이미 그 위치에 존재한다면 파일을 지우고 복사함.

 - -i 옵션 : 복사대상파일이 이미 그 위치에 존재한다면 덮어쓸 것인가 또는 복사하지 않을 것인가를 사용자에게 확인하는 절차를 거침.

 - -P 옵션 : 복사대상이 되는 원본파일이 디렉토리경로와 함께 지정되었을 경우에 지정된 디렉토리경로를 그대로 복사함. 이 경우 원본파일은 Dir1/SubDir1/SubDir2/FileName 등과 같이 디렉토리 경로와 함께 지정이 되어야 함.

 - -u 옵션 : 
복사되는 원본파일의 이름과 동일한 파일이 대상위치에 존재할 경우에 원본파일과 변경날짜를 비교하여 최신파일일 경우에 복사하지 않는 옵션임.



※ 삭제

디렉토리 삭제 rm -r 디렉토리


-d : 비어 있지 않은 디렉토리도 지움
-f : 존재하지 않거나 이미 지워진 파일은 무시하고 다음으로 조용히 넘어감
-i : 지우기 전에 "rm: remove regular file `test.txt'? (test.txt 파일을 지울까요?)" 하고 물어보게 함
-r : 하위 디렉토리까지 모두 지우기
-v : 무엇을 지웠는지 보고하게 함. ("removed `test.txt'" 라는 메시지가 나옴)

[출처] 리눅스 폴더|작성자 꿈꾸는 미르


'OS > 리눅스 & 유닉스' 카테고리의 다른 글

쉘 shell  (0) 2011.08.23
리눅스 cp 명령어 사용법  (0) 2011.01.06
source 명령어  (0) 2010.08.01
rm  (0) 2010.07.30
크론, crontab  (0) 2010.07.26
: