모든 디렉터리에 있는 특정 파일 이름을 가진 모든 파일을 하나의 대상에 복사하는 방법은 무엇입니까?

모든 디렉터리에 있는 특정 파일 이름을 가진 모든 파일을 하나의 대상에 복사하는 방법은 무엇입니까?

다음 파일이 있다고 가정해 보겠습니다.

  • /1/tEst.mp4
  • /1/test.mP4
  • /1/하위 디렉토리/TEST2.mp4
  • /1/.20181106Test2.mp4

단일 명령줄을 사용하여 이 모든 파일을 /2/Videos에 복사하려면 어떻게 해야 합니까?

"mp4"로 끝나고 이름에 "test"가 포함된 모든 파일이 포함되어야 합니다.가능하다면 대소문자를 구분하지 않습니다.

파일 탐색기를 사용하여 "test"라는 이름의 모든 파일을 검색하고 비디오별로 필터링할 수 있지만 터미널에서 이 작업을 수행할 수 있는 방법이 있습니까?

답변1

이것은 bash에서 작동하는 것 같습니다.

set -o nocasematch dotglob globstar
cp /1/**/*test*.mp4 /2/Videos/

답변2

다음 명령을 사용하여 테스트하면 훌륭하게 작동합니다.

find /location_from_where_files_need_be_copied -type f -iname "Test*.mp4" -exec cp -t /targetlocation {} \; 

관련 정보