2012-01-20 3 views
0

저는 MAC에서 개발 중이며 MAC에서 스크립팅하는 데있어 매우 익숙합니다.한 위치에서 다른 위치로 파일을 복사하는 쉘 스크립트

기본적으로 파일을 수동으로 복사하지 않고 터미널에서 실행할 수 있도록 한 위치에서 다른 위치로 파일을 복사 할 수있는 스크립트를 갖고 싶습니다. 아무도 저에게 스크립트를 제공 할 수 있는지 궁금합니다 -

대상 폴더의 내용을 원본 폴더의 내용과 비교하고 차이점이있는 경우 원본 폴더의 파일을 대상 폴더.

    -OR IF THAT IS NOT POSSIBLE- 

한 위치에서 다른 위치로 파일을 단순히 복사하는 스크립트.

+0

나는 또한이 도구를 사용하고 싶습니다. 덕분에 – joaquin

+0

음,이 스크립트는 스크립트가 아니라 기본 명령입니다. 'ditto' 또는'cp'처럼 말입니다. – derobert

답변

0

미안 해요. 내가하고 싶은 것을 성취 할 수있는 훨씬 좋은 방법을 찾았습니다.

기본적으로 휴대 전화 앱의 프론트 엔드 개발을하고 있기 때문에 프론트 엔드 파일이있는 로컬 저장소와 각 장치 (ios, iphone, blackberry e.t.c)의 핵심 앱 코드를위한 다른 디렉토리가 있습니다. 그래서 프론트 엔드 디렉토리에서 각 코어 모바일 앱 디렉토리로 업데이트 된 파일을 복사하는 방법이 필요했습니다. 심볼릭 링크가 훨씬 더 나은 접근 방법이며, 한 디렉토리에서 다른 디렉토리로 파일을 복사하는 스크립트/명령의 필요성을 제거합니다.

5

rsync을 사용할 수 있습니다.

$ rsync -av source target 
+0

+1. 많은 강력한 옵션이 있습니다. http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/rsync.1.html. 예를 들어 --delete에 대해 읽어보십시오. –

2

다음은 예입니다. 이 스크립트는 dir1에있는 모든 파일에 대해 dir2에 존재하는지 확인합니다. dir2에 파일이 없으면 파일을 dir2에 복사합니다.

 
for file in dir1; do 
    if [ ! -s dir2/$file ] ; then 
     cp $file dir2/$file 
    fi 
done 
관련 문제