`

crontab执行expect脚本

 
阅读更多

通过rsync的ssh差异备份方式同步本地目录到远端目录,expect代码如下,命令行手动执行即可

# cat expecttool
#!/usr/bin/expect -f

set timeout 7200;

spawn  /usr/bin/rsync -avz -e "/usr/bin/ssh" /path/to/local/dir/ remoteuser@remotehost:/path/to/remote/dir/
expect { 
"*yes/no*" {
        send "yes\r";
        exp_continue
}
"*assword*" {
        send "pasword\r";
}                     
}
interact

如果要放到crontab任务中,需要把interact替换为 

expect eof

exit

这种方式在crontab和命令行均可运行

分享到:
评论

相关推荐

    linux-expect模拟键盘输入实现定时登录教程.zip

    打开crontab配置文件(`crontab -e`),添加一条定时任务,例如每天凌晨3点运行expect脚本: ```bash 0 3 * * * /path/to/your/login_script.sh ``` 记得替换`/path/to/your/login_script.sh`为你的expect脚本实际...

    linux使用mysqldump+expect+crontab实现mysql周期冷备份思路详解

    一、遇到的问题 我们使用过mysqldump都知道,使用该命令后,需要我们手动输入 mysql的密码,那么我们就不能够... 使用expect脚本,执行utils内的脚本,并为其自动输入密码 最后使用驱动脚本,执行expect,在该脚本里

    sftp在cron中自动传递帐号和密码

    - **Cron的工作原理**:Cron守护进程在后台运行,定时检查用户的crontab文件中定义的任务,并根据设定的时间表执行这些任务。 - **Crontab文件格式**:每一行代表一个任务,格式为:`分钟 小时 月份 月份中的哪一天 ...

    mongodb和mysql的expect方式的异地备份

    - 解释:每30分钟执行一次备份脚本,可以根据需求调整为每日凌晨两点执行。 #### 二、MongoDB异地备份 ##### 2.1 安装必要的运行环境 - **环境准备**:在MongoDB服务器上安装`.exp`文件所需的运行环境。 - 执行...

    Shell脚本专家指南

    - **让telnet的expect脚本自动执行**:介绍了一个示例,演示如何自动化telnet会话。 #### 第18章 用户输入超时 - **手动实现超时**:如何手动处理用户输入的超时情况。 - **使用stty实现超时**:利用stty命令来设置...

    光纤交换机配置自动备份.docx

    通过结合 `configupload` 命令、`crontab` 定时任务以及 `expect` 脚本,可以实现自动化、定期的配置备份,提高网络管理效率和安全性。在实际操作中,应根据具体环境调整参数和脚本,确保备份过程顺利进行。

    使用Shell脚本实现自动化:使用Shell脚本进行开发自动化

    在crontab文件中,你可以配置Shell脚本来按时间表执行。例如,每天凌晨1点运行一次备份脚本。另外,anacron和at服务也是定时任务的备选方案,它们分别适合无规律时间和一次性任务。 5. **排序算法**:虽然Shell不是...

    MongoDB实现自动备份的全过程记录

    为了解决这个问题,可以在expect脚本中增加超时设置和`expect eof`,确保脚本等待命令执行完成再退出: ```bash #!/bin/expect set DATE [exec date "+%Y-%m-%d"] set DIR /xxxxx/dbbak-$DATE spawn rm -rf $DIR ...

    rsync环境搭建.docx

    **Crontab**是一种用于执行定时任务的工具,通常用于定期执行系统维护任务。 - **安装Crontab** - 安装主程序: ```bash yum -y install vixie-cron ``` - 安装用于管理Cron任务的程序: ```bash yum -y ...

    perl网络批量抓取配置工具

    通过集成crontab定时任务管理器,用户可以设置定期执行抓取任务,确保网络配置的实时更新和备份。 首先,`Net::Telnet`是Perl的一个模块,它提供了与远程设备通过Telnet协议交互的能力。这个库允许程序模拟用户登录...

    ssh定时器

    - 使用SSH命令行工具(如`ssh`或`expect`脚本)在Cron任务中执行远程命令。 - 或者,通过Java的SSH库(如JSch)在Java定时任务中建立SSH连接并执行远程命令。 综上所述,这个主题涵盖了从SSH远程连接到Cron定时...

    定时自动关机

    在IT领域,定时自动关机是一项实用的功能,尤其对于那些需要长时间运行计算机但又希望在特定时间节省能源或避免无监控状态下的意外操作的用户。本文将深入探讨定时自动关机的相关知识点,包括其原理、实现方法以及在...

    Oracle自动备份及自动备份步骤

    本文将详细介绍Oracle自动备份的步骤以及如何设置定期执行的脚本。 首先,我们需要编写一个备份脚本,该脚本主要包括以下几个步骤: 1. 初始化变量:设置系统名称、备份路径、日期时间戳,以及创建备份日志文件。...

    Monitor系统说明

    - `copyprocesslist.sh`:通过Expect shell脚本实现与`CallCenterServer`的交互,更新`processlist`文件。 4. **CallCenterServer端**: - `/usr/local/bin/sysinfo.pl`:定时获取服务器的关键信息,如VG、...

    Linux命令大全搜索工具.pdf

    - **`cron`**、**`crontab`**:计划任务工具,用于周期性执行命令。 - **`expect`**:自动交互式脚本编写工具,常用于SSH登录自动化。 #### 三、综合运用案例 例如,假设你需要在一个Linux服务器上定期备份重要...

Global site tag (gtag.js) - Google Analytics