System Engineering/OS

Linux #8. 리눅스 특정 폴더/파일 제외 복사 방법

ZunoXI 2022. 3. 16.

개요

리눅스의 특정 폴더나 파일을 제외하고 복사 하는 방법에 대한 정리

 

특정 폴더/파일 제외 복사

일반적으로 파일을 복사하거나 전송할때 용량이 크거나 파일개수가 많아서 특정 파일이나 폴더는 제외하고 복사하고 싶을 경우가 있다. 해당 경우 cp 명령어를 사용하여 서버 내부에서 복제하거나 scp 명령어를 사용하여 원격지에 전송할때 현재 폴더에서 해당 폴더/파일을 제외하고 복제하는 방법에 대해 기술한다.

 

 

특정폴더 제외 조회

 

먼저 특정한 폴더를 제외하고 조회하는 경우는 아래와 같은 명령어를 사용한다.

 

$ ls 조회할 폴더 | grep -v 조회할 폴더 내의 제외할 폴더

 

예를 들어 test1이라는 폴더내의 mv1이라는 폴더를 제외하고 조회하는 경우

 

$ ls test1 | grep -v mv1


위 처럼 입력하면 조회된다. 

 

 

 

현재폴더에서 특정폴더 제외하여 복사

 

$ cp -R `ls .|grep -v 제외할 폴더` 복제될위치

 

예를들어 현재폴더 하위의 mv1을 제외하고 /infra/test/test2로 복사하는 경우

cp -R `ls .|grep -v mv1` /infra/test/test2

 

 

 

scp 현재폴더 기준 특정폴더 제외하고 복사(전송)
 

$ scp `ls .|grep -v 제외할 폴더` 계정@ip:복제될위치

 

예를들어 현재폴더 하위의 testfolder를 제외하고 10.216.xxx.xxx의 weblogic계정 /home/weblogic/app/webdocs/test 위치에 전송할 경우

 

$ scp -r `ls .|grep -v testfolder` weblogic@10.216.xxx.xxx:/home/weblogic/app/webdocs/test

 

여러개의 폴더나 파일을 제외하고 복제할 경우는 아래와 같이 기술하면 된다.

 

$ scp -r `ls .|grep -v testfolder | grep -v test.tar | grep -v test_org` weblogic@10.216.xxx.xxx:/home/weblogic/app/test
반응형

댓글