我正在寻找一个 rsync 脚本,它可以每晚将特定目录从我的家用机器备份到远程服务器。因此说:/home/me/Pictures to ssh -p 6587[电子邮件保护]/图片。如果它可以查找更改,那就太好了,但我不太担心更改方面,而是有一个在晚上某个时间使用 cron 或其他方式运行的脚本。我在谷歌上搜索并找到了脚本,但这些脚本特定于那些创建者的操作。任何帮助都会很乐意接受,因为脚本部分真的让我很困惑。谢谢你,Janice
答案1
创建基本脚本非常简单。您可以使用文本编辑器(gedit
、,nano
或更强大和复杂的emacs
、、vim
...)来编辑文件。输入要在命令行中运行的命令。给它一个“神奇”的第一行,这样系统就知道使用哪个命令来遵循脚本中的说明。然后处理历史遗留问题,在保存/退出后,将文件标记为“可执行”,这样您就可以运行它。
最基本的魔法第一行是#!/bin/sh
--#!
是“该行的其余部分是要运行以正确使用此文件的命令”的部分,并且是/bin/sh
shell。您还可以使用/bin/bash
,或其他各种东西。
因此创建一个文件do_backups
:
#!/bin/sh
rsync -a -e "ssh -p 6587" /home/me/Pictures/ [email protected]:/Pictures/
进而chmod +x do_backups
。
说-a
“在这个目录下做所有事情”;-e
改变用于连接的命令,以便您可以添加端口;尾随的/
on/home/me/Pictures/
对 rsync 很重要——这是它的怪癖之一。
它确实很简单,只需将你在提示符下运行的命令放入一个文件中,并带有特殊的第一行即可。它是设计是相同的命令、相同的语法等等。
rsync 会自行寻找变化 —— 这是其工作的一部分。
您是否还需要指向 cron 部分的指针?