带input的rsync shell脚本

我想有一个rsync shell脚本,用户将input文件夹或文件以同步到另一台服务器。

即 – ./deploy /html/./deploy /html/kuky.txt

该脚本将等待input,然后将执行rsync脚本请帮助。

干得好:

 echo "Enter file or folder path" read target if [ ! -e "$target" ] then echo $target does not exist else echo Transferring $target rsync -avzr $target [email protected]:/home/user/target_directory fi 

把它放到一个名为sender.sh的文件中。 然后从命令行调用bash sender.sh。

我build议你查找rsync命令的选项。 他们可能会改变行为。

Can的答案需要用户运行脚本,然后手动inputpath,以下将允许您使用您在OP中指定的语法:

 #!/bin/bash echo -n "Transferring ${*} to server... " rsync -az ${*} <user>@<server>:/path/to/target/ 1> /dev/null echo "Done!" 

这个脚本将所有的 CLI参数作为源目录/文件,并将它们发送到服务器。