1일 이내에 모든 파일을 재귀적으로 복사하는 방법은 무엇입니까?
나의 첫 시도
find . -amin -1440 | xargs cp /dest
하지만 해당 항목이 매개변수 앞에 xargs
위치해야 하기 때문에 작동하지 않습니다 ./dest
답변1
-t
GNU 옵션을 사용할 수 있습니다 cp
.
-t, --target-directory=DIRECTORY
copy all SOURCE arguments into DIRECTORY
find
's 도 사용해야 합니다 -print0
. xargs -0
그렇지 않으면 공백이나 기타 이상한 문자가 포함된 파일 이름에 대해 실패합니다.
find . -amin -1440 -print0 | xargs -O cp -t /dest
더 나은 접근 방식은 자체를 사용 find
하고 xargs
완전히 피하는 것입니다.
find . -amin -1440 -exec cp -t /dest {} +
마지막으로 "파일"을 언급했으므로 디렉토리, 심볼릭 링크 및 기타 이상한 항목을 건너뛰고 find
일반 파일만 찾도록 지시할 수 있습니다.
find . -type f -amin -1440 -exec cp -t /dest {} +