Scripting
將伺服器的一個文件夾中的文件同步到另一個文件夾
我需要一個腳本,其中一台伺服器的文件將被複製到另一台伺服器的其他文件夾,並且僅當源伺服器文件上的文件在目標伺服器上不存在時。
更多細節
如果使用者在源伺服器上創建文件並且當文件完成並保存它(命令或腳本)時,這將在源伺服器上一直執行,如果文件存在於 DEST 上,則首先檢查 DESTINATION SERVER。SERVER 如果不是,則將 if 複製到 DEST。伺服器
如何做到這一點我不知道腳本。
使用
rsync
’--ignore-existing
標誌。來自man rsync
:--ignore-existing skip updating files that exist on receiver
要在兩個不同的伺服器之間執行此操作,您需要執行以下操作:
rsync --ignore-existing -avz -e ssh source remoteuser@remoteserver:destination
如果您真的要像您在問題中所說的那樣“一直”(即持續地)執行此程序,我強烈建議您使用
inotify
基於解決方案的解決方案,這將消除大量成本。
Unison是另一個這樣的工具,它沒有與 rsync 相同的功能集,但可能同樣適合這種特殊情況。