얕고넓은지식/linux

리눅스 파일이동 특정폴더 제외

쪽마 2023. 2. 11. 01:19
반응형

리눅스에서 특정 폴더를 제외하고 파일을 이동하려면 find 명령어와 xargs 명령어를 사용할 수 있습니다. 예를 들어, /path/to/source 디렉토리에서 /path/to/destination 디렉토리로 모든 파일을 이동하려면 다음과 같이 입력할 수 있습니다.

 
 
 
find /path/to/source -type f ! -path "/path/to/source/excluded_folder/*" -print0 | xargs -0 -I {} mv {} /path/to/destination
 
 
 
 
  • find 명령어는 /path/to/source 디렉토리에서 파일을 찾습니다.
  • ! -path "/path/to/source/excluded_folder/*" 옵션은 /path/to/source/excluded_folder 폴더를 제외합니다.
  • -print0 옵션은 결과 파일을 NULL 문자로 구분하도록 지정합니다.
  • xargs 명령어는 find 명령어로부터 얻은 결과를 처리하고, mv 명령어를 이용해 파일을 이동합니다.
  • -0 옵션은 xargs 명령어가 NULL 문자로 구분된 결과를 처리하도록 지정합니다.
  • -I {} 옵션은 {} 문자열을 각 파일의 이름으로 대체하도록 지정

참쉽죵?

반응형