Linux의 특정 파일을 찾아 디렉토리에 복사

Linux의 특정 파일을 찾아 디렉토리에 복사
abc-1.0.zip
kncb-1.0.zip
jenk-1.1.zip

위 파일을 모두 동적으로 찾아서 jenk-1.1.zip이 아닌 다른 디렉터리에 복사하고 싶습니다. 다음 명령을 시도했지만 파일(jenk*.zip)도 복사합니다. jenk-1.1.zip을 제외한 위의 모든 파일을 언급된 디렉터리(test_dir)에 복사하려면 명령이 필요합니다.

find . \( -name *abc*.zip-o -name *knc*.zip ! -name "*jenk*.zip"\)  ! -path '*/test_dir/*.jar' -exec cp -ar {} ./test_dir \;

답변1

 -iname *.zip 

모든 zip 파일을 찾고 있습니다.

! -iname "jen*.zip"

모든 jenk* 파일 무시

zip 파일만 찾는 경우 jar 파일을 제외할 필요가 없습니다. 파일을 검색하는 경우 전환 (재귀적으로) find -type f할 필요가 없습니다 ( ).cp -r

find . -type f \( -iname "*.zip" ! -iname "jen*.zip" \) -exec cp -av {} ~/test \;

답변2

cp $(find . -maxdepth 1 -name abc-1.0.zip -o -name kncb-1.0.zip) test_dir

파일이 있는 디렉터리에서 실행하세요. 하위 디렉토리로 이동하려면 해당 디렉토리를 삭제하세요 maxdepth 1.

관련 정보