我有两个大文件夹需要 rsync一个接一个地使用一个命令。
命令 1:
rsync --compress /home/user/folder/ [email protected]:/home/user/a/folder
命令2:
rsync --compress /home/user/folder2/ [email protected]:/home/user/b/folder2
合并到一个命令中:
rsync --compress /home/user/folder/ [email protected]:/home/user/a/folder ; rsync --compress /home/user/b/folder2/ [email protected]:/home/user/folder2
输入此命令后,系统会提示我输入远程服务器的密码。这很好。但是,第一个命令完成后,系统会再次提示我输入相同的凭据(而我不在场);因此,我合并命令的目的落空了。
我希望 (1) 执行一个命令,(2) 离开,(3) 稍后再回来查看这两项工作是否都已完成一个接一个地。
不用脚本可以实现这个吗?
編輯:我修改了我的示例以反映目的地不在同一父文件夹内。
答案1
关于什么:
rsync --compress /home/user/folder2 /home/user/folder [email protected]:/home/user/
它会做你想做的事。
你写的带分号的命令只是连接了两个命令。询问密码是正常的。
或者,如果您确实想要一个接一个地 rsync,那么您可以使用带密钥的 ssh 来避免询问密码。
答案2
有什么原因导致您不能使用 ssh 密钥?这是解决密码提示问题的正常方法(如果expect
无法使用密钥,则采用第二种方法)。
我希望您在受保护的会话中运行它,使用类似screen
或 之类的东西tmux
。