From ea8e8d6bb0000b014159664a0d0a7e89e34f5612 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=93=E5=8F=91=E5=8F=97=E9=95=BF=E7=94=9F?= Date: Mon, 14 May 2018 17:01:23 +0800 Subject: [PATCH] =?UTF-8?q?linux=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/_posts/linux/crontab-定时任务.md | 70 ++++++++++++ .../linux/expect-交互式命令行自动化执行.md | 104 ++++++++++++++++++ source/images/linux/crontab_config.jpg | Bin 0 -> 47962 bytes 3 files changed, 174 insertions(+) create mode 100644 source/_posts/linux/crontab-定时任务.md create mode 100644 source/_posts/linux/expect-交互式命令行自动化执行.md create mode 100644 source/images/linux/crontab_config.jpg diff --git a/source/_posts/linux/crontab-定时任务.md b/source/_posts/linux/crontab-定时任务.md new file mode 100644 index 0000000..f835763 --- /dev/null +++ b/source/_posts/linux/crontab-定时任务.md @@ -0,0 +1,70 @@ +--- +title: crontab-定时任务 +date: 2018-5-14 15:16:46 +tags: + - linux +categories: + - linux +--- + +linux下创建定时任务通常使用`crontab`命令 +使用`cron表达式`来指定执行的定时规则 +使用shell脚本编写需要执行的内容 +> 脚本中涉及的文件路径是要写 **绝对路径** + + +执行`crontab -e`编辑当前用户crontab服务文件 + +#### cron语法 +crontab的定时任务只能精确到分钟 , 而无法精确到秒 +所以cron表达式只有5个值 +``` +分 小时 日 月 星期 命令 +0-59 0-23 1-31 1-12 0-6 command +``` +0表示周日(也可以用英文来表示,sun表示星期天,mon表示星期一) +一般一行对应一个任务 + ++ `*`代表任意值 ++ `/`代表 **每** ++ `-`代表连续的时间段(从xx到xx) ++ `,`代表不连续的时间点(xx和xx) + +常见的用法举例 +``` +5 * * * * command 指定每小时的第5分钟执行一次 +30 5 * * * command 指定每天的 5:30 执行 +30 7 8 * * command 指定每月8号的7:30分执行 +30 5 8 6 * command 指定每年的6月8日5:30执行 +30 6 * * 0 command 指定每星期日的6:30执行 +30 3 10,20 * * command 每月10号及20号的3:30执行 +25 8-11 * * * command 每天8-11点的第25分钟执行 +*/15 * * * * command 每15分钟执行一次 [即每个小时的第0 15 30 45 60分钟执行] +30 6 */10 * * command 每个月中,每隔10天6:30执行一次 [即每月的1、11、21、31日的6:30执行] +``` + + +#### 其他用法 ++ `crontab -l` - 列出某个用户cron服务的详细内容 ++ `crontab -u ` - 设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数 ++ `crontab -r` - 删除某个用户的cron服务 + +#### 全局配置 +cron的主配置文件是`/etc/crontab` +![crontab config](/images/linux/crontab_config.jpg) +在这个文件里面也可以配置定时任务的执行规则 + +这里这个PATH并不会在实际的脚本运行当中生效 +如果脚本单独运行没问题 , 但是在定时任务当中出现命令找不到的情况 + +比如是在`/etc/profile`当中配置的环境变量 +可以用下面的方式指定定时任务规则 +```bash +* * * * * . /etc/profile; command +``` + +#### 服务相关的操作 ++ `serivce crond start` - 启动 ++ `serivce crond stop` - 停止 ++ `service crond restart` - 重启 ++ `service crond status` - 查看运行情况 diff --git a/source/_posts/linux/expect-交互式命令行自动化执行.md b/source/_posts/linux/expect-交互式命令行自动化执行.md new file mode 100644 index 0000000..6c1953e --- /dev/null +++ b/source/_posts/linux/expect-交互式命令行自动化执行.md @@ -0,0 +1,104 @@ +--- +title: expect-交互式命令行自动化执行 +date: 2018-5-14 10:45:12 +tags: + - linux +categories: + - linux +--- +linux当中存在很多交互式的命令行 +简单来说就是执行过程中需要等待用户的输入 , 获得输入内容后继续执行 +这种情况下我们可以借助`expect`来实现自动化执行这些命令 + +> 直接重定向输入流多数情况下是不行的 +因为它会将需要输入的内容一次性全部输入 , 而无法做到多次的交互 + + +expect本身是一个shell脚本的解释器 , 与bash属于同一类东西 +所以我们可以在脚本开头添加 +```bash +#!/usr/bin/expect +``` +来指定使用该解释器来执行这个脚本 , 运行脚本直接`./test.sh`即可 +当然也可以执行`expect test.sh` + +#### 安装 +```bash +yum install expect.x86_64 +``` + +#### 编写脚本 +使用`npm init`初始化项目的时候 +需要多次输入项目的相关基本信息 , 这里就用它来做示例 +```bash +#!/usr/bin/expect +set timeout -1 + +cd /root/pro_test +spawn /usr/local/nodejs/bin/npm init +expect "package name:*" +send "\n" +expect "version:*" +send "\n" +expect "description:*" +send "这里是项目的描述信息\n" +expect "entry point:*" +send "main.js\n" +expect "test command:*" +send "\n" +expect "git repository:*" +send "\n" +expect "keywords:*" +send "key1 key2\n" +expect "author:*" +send "Sookie\n" +expect "license:*" +send "MIT\n" +expect "Is this ok?*" +send "yes\n" + +expect eof +``` +说明: ++ `spawn`和`send`命令是只有在expect解释器当中才有的 , 所以该脚本必须用expect解释执行 ++ `spawn`表示启动一个新的进程 ++ `expect "xxx"`表示识别的进程输出( 可以使用通配符 ) ++ 注意在输入内容的末尾加`\n` + +#### interact +如果我们需要让用户在适当的时候手动干预这个过程 +就需要执行`interact` +例如 +```bash +spawn ftp ftp.test.com +expect "Name" +send "user\n" +expect "Password:" +send "123456\n" +interact +``` +下载完ftp文件时,仍然可以停留在ftp命令行状态,以便手动的执行后续命令 + +#### timeout +执行`set timeout`可以设置等待进行输出信息的超时时间 +单位是秒 , 默认是10秒 +如果超过了这个时间还未能匹配到输出内容 , 则会跳过这个expect语句继续向下执行 +-1则表示没有超时时间 , 也就是未匹配到输出内容会一直等待 + +#### 多分支模式 +有时候程序的输出可能有多种分支路线 +所以我们的自动化脚本也不能简单地进行单线匹配 +expect还支持多分支模式语法 +```bash +expect { + "hi" { send "You said hi\n" } + "hello" { + send "Hello yourself\n" + expect { + "Nice to meet you" { send "Nice to meet you too!" } + "How is it going" { send "It's good, thank you." } + } + } + "bye" { send "See you\n" } +} +``` \ No newline at end of file diff --git a/source/images/linux/crontab_config.jpg b/source/images/linux/crontab_config.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0413bbf703fa78373b1bf125ea3acb8589fd4117 GIT binary patch literal 47962 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 a6K)8!|AR&p`u?7Ayr6wIap34*bN>M}Hr3bw literal 0 HcmV?d00001