Linux에서 동적으로 파일을 찾아 디렉토리에 복사하는 방법

Linux에서 동적으로 파일을 찾아 디렉토리에 복사하는 방법

이 파일을 찾아 디렉토리(test_dir)에 복사해 보십시오.

abc-1.0.zip
kncb-1.0.zip
jenk-1.1.zip

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

find / -type f -name "*abc*.zip" -o -name "*kncb*.zip" -o -name "*jenk*.zip" ! -path '*/test_dir/*.jar' -exec cp -ar {} ./test_dir \;

답변1

( )수술실을 중심으로 애플리케이션을 구성 해야 합니다 .

설명은 매뉴얼 페이지에서 찾을 수 있습니다:

-a는 암시적으로(예: 두 테스트 사이에 명시적인 연산자가 없음) 또는 명시적으로 지정된 경우 -o보다 우선합니다. 이는 . -name afile -o -name bfile -print를 찾으면 파일이 인쇄되지 않음을 의미합니다.

예:

touch afile bfile

아니요 ( ):

find . -name afile -o -name bfile -print
./bfile

-name bfile과 사이에 암시적 -a가 있습니다 -print.

find . -name afile -o -name bfile -a -print
./bfile

( )결과는 예상대로입니다.

find . \( -name afile -o -name bfile \) -print
./afile
./bfile 

귀하의 암시 적 값 은 ~ 사이 -a입니다 .-o -name "*jenk*.zip"! -path '*/test_dir/*.jar'

관련 정보