shell脚本之while for if 语句和编写计划任务
关于while循环:
while
do
done
例如
1、关于内存的实时操作:
(1)、vim a.sh
(2)、输入以下while循环
(3)、./a.sh执行脚本
2、自加一的操作:
(1)、vim b.sh
(2)、先赋值xyy=1,再输入当xyy<=10时,则输出xyy的值,并且执行加1的命令(即xyy++),直至等于10为止,最后输出每次的结果
(3)、./b.sh执行脚本
3、关于登录循环的操作:
(1)、vim 2.sh
(2)、请输入用户名和密码,如果匹配账号密码正确的话,则输出登录成功,如果账号密码不正确的话,则输出,账号和密码是错误的
(3)、./2.sh执行脚本
关于for语句:
for i in { }
do
done
例如:
1、从1-100里取值,并将取到的值挨个输出:
(1)、vim 3.sh
(2)、in表示从{ }里面取值给i
(3)、./3.sh执行脚本
2、可以ping IP地址,查看有哪些可以使用:
(1)、vim 3.sh
(2)、in表示从{ }里面取值给i
(3)、./3.sh执行脚本
关于if语句
例如:
启动nginx服务
(1)、vim 4.sh
(2)、chmod +x 4.sh(给4.sh可执行的权限)
(3)、./4.sh执行脚本
关于编写任务计划:crontab命令编写
crontab命令编写计划任务
语 法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]
crontab任务配置基本格式:
* * * * * command
分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期(0-6,0代表星期天) 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
参 数:
-e 编辑该用户的计时器设置。
-l 列出该用户的计时器设置。
-r 删除该用户的计时器设置。
-u<用户名称> 指定要设定计时器的用户名称。
crontab例子
30 21 * * * /usr/local/etc/rc.d/apache restart #每晚的21:30 重启apache
45 4 1,10,22 * * /usr/local/etc/rc.d/apache restart #每月1、10、22日的4 : 45重启apache
10 1 * * 6,0 /usr/local/etc/rc.d/apache restart #每周六、周日的1 : 10重启apache
0,30 18-23 * * * /usr/local/etc/rc.d/apache restart #每天18 : 00至23 : 00之间每隔30分钟重启apache
0 23 * * 6 /usr/local/etc/rc.d/apache restart #每星期六的11 : 00 pm重启apache
* 23-7/1 * * * /usr/local/etc/rc.d/apache restart #晚上11点到早上7点之间,每隔一小时重启 apache
* */1 * * * /usr/local/etc/rc.d/apache restart #每一小时重启apache
0 11 4 * mon-wed /usr/local/etc/rc.d/apache restart #每月的4号与每周一到周三的11点重启apache
0 4 1 jan * /usr/local/etc/rc.d/apache restart #一月一号的4点重启apache
*/30 * * * * /usr/sbin/ntpdate 210.72.145.44 #每半小时同步一下时间
0 */2 * * * www /usr/bin/somecommand >> /dev/null 2>&1 #以用户www的身份每两小时就运行某个程序:
0 1 * * * /home/testuser/test.sh
每天晚上1点调用/home/testuser/test.sh
*/10 * * * * /home/testuser/test.sh
每10钟调用一次/home/testuser/test.sh
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启apache。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。
* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启apache
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启apache
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启apache
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启apache
*/30 * * * * /usr/sbin/ntpdate 210.72.145.44
每半小时同步一下时间
最新文章
- ImageLoader配合ImageSwitcher的使用
- git 提交代码到github错误处理
- your local repository contains non-ascii
- 玩转 HTML5 Placeholder
- redis 学习笔记(4)-HA高可用方案Sentinel配置
- js-字符串转化日期
- 反向Ajax,实现服务器向客户端推送消息
- Node.js高级编程读书笔记 - 3 网络编程
- java 链接jdbc
- 通过java来批量生成身份证号
- 探讨mvc下linq多表查询使用viewModel的问题
- redis+tomcat+nginx session共享
- Ajax实现聊天
- [iOS微博项目 - 1.5] - NavigationBar标题按钮
- 项目总结——深入浅出socket网络编程
- C# 多线程 异步加载 窗体
- Linux下的 >;, >;>;, <;, ps, |, grep, /dev/null
- linux 学习笔记 TAR包管理
- 反编译Apk得到Java源代码
- ASP.NET Response 下载文件
热门文章
- CDateTimeUI类源码分析
- 「暑期训练」「Brute Force」 Restoring Painting (CFR353D2B)
- Qt QPainter::end: Painter ended whith 2 saced states
- Paper Reading - Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge
- 走进Android系统
- c#form界面情况下显示console窗体
- JAVA 异常处理的认知学习过程
- 周记【距gdoi:117天】
- 使用def文件简化dll导出
- SDOI 2009 学校食堂 状压dp