Ftp
如何使用rsync <3.0指定相對上傳路徑,生成子文件夾
我正在編寫一個腳本,我想上傳單個文件並自動生成文件夾結構,如 mkdir -p 但我無法讓 rsync 2.6.9(兩者)合作。
看起來 rsync 只製作一級文件夾,否則會出錯。
我正在嘗試重現方便
ncftpput -C -R -m remote-host local-path-name remote-path-name
的操作(ncftp 的遞歸模式;複製整個目錄樹 + 嘗試在複製之前創建遠端目標目錄。)。可能的?
我的嘗試:
rsync -av -e ssh /home/gitrepos/www/board/httpdocs/B/C/delete_snippet.processor.php user@testboard.org:/var/www/vhosts/testboard.org/httpdocs/B/C/delete_snippet.processor.php
返回:
rsync:push_dir#3“/var/www/vhosts/testboard.org/httpdocs/B/C”失敗:沒有這樣的文件或目錄(2)
rsync -av -e ssh /home/gitrepos/www/board/httpdocs/B/C/delete_snippet.processor.php user@testboard.org:/var/www/vhosts/testboard.org/httpdocs/
工作,創建 httpdocs,但沒有 B/C 結構。
rsync -advR -e ssh -v /home/gitrepos/www/board/httpdocs/B/C/delete_snippet.processor.php user@testboard.org:/var/www/vhosts/testboard.org/httpdocs/
工作,但在伺服器上重新創建整個 /home/gitrepos… 結構。
權限設置為 777 並由使用者擁有。
感謝幫助。
如果您使用 rsync 2.6.7 或更高版本,您可以嘗試在 httpdocs 之後使用點斜杠方法來限制目錄。試試這個:
rsync -advR -e ssh -v /home/gitrepos/www/board/httpdocs/./B/C/delete_snippet.processor.php user@testboard.org:/var/www/vhosts/testboard.org/httpdocs/