我有一個文件夾成千上萬的文件和520 GB的數據,我每晚通過rsync同步到遠程主機。這個過程通常需要大約5個小時。我還想在白天將這些新的和已更改的文件複製到遠程位置,而無需比較兩個樹,這是rsync所做的,因爲有時候目標上的人需要訪問新文件,所以我開始玩弄scp,但我不知道如何解決迄今爲止遇到的兩個問題。是的,我是一個新手。 :)將新文件複製到遠程主機與FIND和SCP(或更好的方式,你可能會建議)
這是我的命令,我想每小時運行一次: find folder/-type f -mmin -60 -print0 -exec scp「/ rootfolder1/subfolder1/{}」「user @ host:/ rootfolder2/subfolder2/{}「\;
我遇到的問題是: 當傳遞給scp的字符串有空格時,它不起作用並觸發錯誤「scp ambiguous target」。顯然,scp需要空間逃避反彈,但我不知道如何指示FIND以這種方式打印路徑,也不知道如何在其中插入SED命令來執行如下操作:sed's/// g' 。
另一件事是當要複製的文件位於目標scp中不存在的文件夾中時也會產生錯誤。所以我不知道在嘗試複製每個文件(假定mkdir -p在遠程主機上工作)之前,是否應該嘗試使用「mkdir -p」,或者是否有任何方法強制scp創建丟失的文件夾。
當然,如果你可以建議一個更好的解決方案,一切手段! 謝謝。