새 파일 만 복사-가능합니까? 기본적으로 두 폴더를 병합하려는 경우


14

Drive 1에는 Music이라는 폴더가 있으며 100GB입니다. Drive 2에는 Music이라는 폴더가 있으며 116GB입니다. 가장 최신 버전입니다. 모든 단일 파일을 다시 쓰지 않고 드라이브 2에서 드라이브 1로 음악 폴더를 복사하려면 어떻게합니까?


어떤 OS X 버전을 사용하고 있습니까?
Nix

1
10.7.4를 사용하고 있습니다. 한 드라이브에서 다른 드라이브로 폴더를 복사하면 교체 할 것인지 묻는 메시지가 나타납니다. 병합 옵션이 없습니다.
dallen

답변:


5

폴더를 복사하지 않고 복사하는 경우에만 병합 옵션이 표시됩니다. option새 폴더를 이전 폴더의 위치로 드래그하는 동안 계속 누르고 있어야합니다. 또한, 사용 +를 c새 폴더를 복사하고 + 것은 v당신에게 파일을 병합 할 수있는 옵션을 제공한다 이전 폴더를 통해 붙여 넣습니다.


이것은 여전히 ​​다시 쓸 필요가없는 파일을 덮어 쓰는 것 같습니다. 사용 rsync대신에
BRogers

병합 옵션을 사용할 수 있어도 때로는 작동하지 않는 경우가 있습니다 (오류를보고하고 아무 것도하지 않음). 특히 귀하의 경우와 같이 큰 폴더 인 경우에 그러합니다. rsync를 사용해야하는 또 다른 이유입니다.
Andrzej Martyna

24

이것은 rsync의 일반적인 사용 사례입니다.

rsync -av /source-path/source-dir /destination-path

rsync는 새 파일과 변경된 파일 만 새 위치로 복사합니다.

소스 인수에서 후행 슬래시가 어떻게 작동하는지 이해하는 것이 중요합니다. 후행 슬래시가 있으면 / source-path / source-dir 의 내용이 destination-path에 복사됩니다 . 후행 슬래시가 없으면 source-dir 자체가 대상에 복사되고 해당 내용이 대상 계층에서 한 단계 더 낮아집니다.

따라서 한 경로를 다른 경로로 복제하려면 다음과 같이 후행 슬래시를 포함하십시오.

rsync -av /sourcepath/sourcedir/ /duplicatpath/sourcedir/

1
대단하다! 여러 드라이브 (또는 컴퓨터의 모든 곳) 에서이 작업을 수행하고 디렉토리를 입력하지 않으려면 드라이브 (외부 USB 또는 타임 캡슐) 또는 특정 디렉토리를 드래그하여 추가하십시오 그것은 당신을 위해 명령에. 대상 위치를 터미널로 드래그하면됩니다.
BRogers

슬래시를 제안 해 주셔서 감사합니다. rsync -av ./foo/bar / vol1 / foo / bar가 기존의 모든 파일을 복사하는 이유를 숙고했습니다. 블러디 슬래시 lol !!!
sming

4

최신 정보

먼저 coreutils를 먼저 설치하십시오. 를 실행하십시오 brew install coreutils. brew설치 하지 않은 경우 ... Windows로 다시 전환하십시오!

cp --version출력 버전이 cp (GNU coreutils) 인지 확인하십시오 . 8. ^^

그런 다음 올바른 cp버전이 표시되고 -u플래그가 작동합니다.


cp명령을 확인하십시오 . man cp옵션을 사용 하고 읽으십시오. 당신은 다음과 같은 것을 할 수 있습니다 :

cp -r -u ~/source ~/destination

-R, -r , --recursive : 디렉토리를 반복적으로 복사
-u , --update : SOURCE 파일이 대상 파일보다 최신이거나 대상 파일이 누락 된 경우에만 복사
-p --preserve = mode, ownership , timestamps
-v --verbose : 수행중인 작업 설명

따라서 음악 / 새 폴더를 말하기 위해 다운로드 / 음악 폴더 에서 파일을 복사하려면 다음과 같이하십시오. 이렇게하면 두 폴더의 내용이 병합되고 동일한 이름과 경로를 가진 두 파일이 있으면 타임 스탬프를 기반으로 한 최신
cp -ruvp ~/Downloads/music/* ~/Music/new/


-u 옵션이 OSX의 cp 명령과 함께 작동합니까? Sierra에서 "cp : illegal option-u"메시지가 나타납니다. 모든 명령이 Linux와 동일한 것은 아닙니다.
OMA

cp --help 명령을 시도하고 옵션이 사용 가능한지 확인하십시오. 또는 cp --version을 확인하여 최신 상태인지 확인하십시오. 나는 사용하고있다 : cp (GNU coreutils) 8.27
drew7721

안타깝게도 -u는 OS X에서 cp에 유효한 플래그가 아닙니다. 매우 편리합니다!
퀘스트 당 Aronsson

불행히도이 답변은 잘못되었습니다.
윌리엄 Cerniuk

사용 brew install coreutils올바른 얻을 cp버전.
drew7721

0

기본 Lion Merge 버튼이 왜 나에게 표시되지 않는지 잘 모르겠습니다. 하지만 결국을 사용했습니다 ditto. 여기에서 찾을 수 있습니다 : https://superuser.com/a/221599/102789


1
조심해! ditto는 최신 파일을 유지하지 않으며 항상 소스로 대상을 덮어 씁니다. 소스 파일이 이전 버전 인 경우 새 파일을 압축 해제하고 이전 파일로 교체합니다
FrancescoMM

맞습니다
-FrancescoMM의
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.