如果源或目標變數在檔案夾名稱中有空格,我無法讓我的 rsync 腳本作業
#!/bin/bash
HOST="[email protected]"
source="/path/My Files/"
dest="/path/My Files2/"
rsync -avhP --delete "$HOST":"$source" "$dest"
我得到的錯誤是
receiving incremental file list
rsync: [sender] link_stat "/path/My" failed: No such file or directory (2)
rsync: [sender] change_dir "/root/Files" failed: No such file or directory (2)
任何幫助如何寫這個都會很棒
uj5u.com熱心網友回復:
添加-s當前rsync版本的選項。
來自man rsync:
-s , --protect-args:此選項將所有檔案名和大多數選項發送到遠程 rsync,而不允許遠程 shell 解釋它們。這意味著名稱中不會拆分空格,并且不會翻譯任何非通配符的特殊字符(例如~、$、;、& 等)。通配符在遠程主機上通過 rsync 進行擴展(而不是由 shell 來做)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/439445.html
