저는 보통 scp를 사용하여 물건을 복사하지만 더 강력한 rsync 명령에 익숙해졌습니다. 변경된 파일 만 복사하여 더 적은 대역폭을 사용할 수 있습니다. 그러나 rsync에는 많은 복잡한 매개 변수가 있으므로 이클립스를 쉽게 만들 수있는 작은 Bash 스크립트를 만들고 'rscp'명령을 호출한다고 생각했습니다. 그래서, 나는 이와 비슷한 것을 만들었습니다. 아래 예에서 웹 호스트는 22 이외의 다른 포트 번호를 사용하므로 $ 1이 사용됩니다.더 쉬운 rsync 명령을 만드는 중 오류가 발생했습니다.
#!/bin/bash
rsync -avzp --progress --rsh='ssh -p$1' $2 $3 $4 $5 $6 $7
그래서, 그것의 사용, 나는 희망, 같은 것입니다 : scp 명령의 내 사용에 조금 더 가까이 만들 것
rscp 3822 --exclude=tiny_mce /var/www/mysite/* [email protected]:~/www/mysite
을, 당신은 참조하십시오. 내가 이것을 실행할 때
그러나, 나는이 오류를 얻을 :
building file list ...
4 files to consider
ERROR: destination must be a directory when copying more than 1 file
rsync error: errors selecting input/output files, dirs (code 3) at main.c(494) [receiver=2.6.9]
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(454) [sender=2.6.9]
를하지만 일반 rsync를 명령으로 돌아 가면, 그냥 잘 작동합니다.
내 배쉬 스크립트에서 내가 뭘 잘못하고 있는지 알아낼 수 있습니까?