2014-10-25 3 views
0

저는 아직 리눅스 스크립팅에 익숙하지 않아 약간 사소한 것일 수 있습니다.수정 된 파일 및 파일 구조 복사하기

내 스크립트의 일부로 파일 구조를 유지하면서 수정 된 모든 파일을 다른 폴더에 복사하려고합니다.

find /SourceFolder/ -newer /BackupFOlder/ -exec cp --parents \{\} /Destination 

은 위의 명령이 나에게 오류를주고, 작동하지 않습니다하지만 : 찾기 :에없는 인수 '간부'

하지 않는 이유는이 작품 나는이 방법을 발견 ?

나는이 발견 Copy files preserving folder structure

을하지만 CP에게 명령 만 사용하고 싶습니다.

정말 도움이 되겠습니까.

답변

1

을 시도 어디 명령이 종료, 당신이 후 추가 find 옵션을 가질 수 있기 때문이다.

find /SourceFolder/ -newer /BackupFOlder/ -exec cp --parents {} /Destination \; 

그러나, 더 나은 솔루션 rsync을 사용하는 것입니다 :

rsync -a /SourceFolder /BackupFolder 
+0

고마워요. 그 트릭을 한 것으로 보인다. \ {\}와 {} 부분의 차이점은 무엇입니까? – SSF

+0

차이가 없습니다. 그 캐릭터를 벗어날 필요가 없습니다. 두 캐릭터 사이에 아무 것도없는 특별한 의미가 없습니다. – Barmar

+0

나는 @Barmar를 보았습니다. 다시 한번 감사드립니다. 또한 rsync가 좋은 옵션이라는 데 동의합니다. 그러나 이것은 주로 학습을위한 것입니다. 다른 스크립트를 사용하여 Linux 스크립팅을 개선하려고합니다. – SSF

0

-exec 옵션은 알려줄 수있는 ; 인수가 필요합니다

tar cf - . | (cd <some other dir>; tar xfv -) 
+0

감사합니다. 어쨌든 타르를 사용하지 않습니까? – SSF

+0

네 -하지만 타르 (tar)가 유닉스 시스템에 있다고 알고 있습니다. –

+0

예, 'tar'을 포함하지 않는 'restore'스크립트도 있습니다. 이것은 대부분 학습 목적을위한 것입니다. 기본 명령으로 스크립트를 작성하려고합니다. – SSF