开发环境入门 linux基础 (部分)while for 函数 计划任务
while循环
while
do
动作
done
需要无限循环时我们会选择while :
echo -e 格式处理,将\n的意义不变。
exit 指退出执行程序
break 指跳出本层循环
continue 跳出本次循环
用户登录程序,判断用户名密码输入是否非法,输入错误重新输入,登录成功之后,执行操作命令,输入exit 退出,重新登录
for循环
事例:
for i in {1..100}
do
echo $i
done
检测网络IP地址是否占用 (192.168.16.0/24段)
循环检测一个网段。
for i in {1,253}
do
ping -c1 192.168.16.$i &> /dev/null 将ping的处理文件全部处理为空,不在终端上打印处理文件。
if [ $? -ne 0 ]
then
echo '192.168.16.$i is available! '>> /tmp/a.txt
将数据直接导入到文档之中,不在终端上显示。
else
echo '192.168.16.$i is unavailable!'
fi
done
case语法
事例:
read -p "username: " -t 5 uname
echo
if [[ -z $uname ]]
then
uname=default
fi
case $uname in #循环判定值在哪里
root) # root下,输出,;;表示结束。
echo "welcome $uname"
;;
seker)
echo "welcome $uname"
;;
default)
echo "welcome $uname"
;;
*) #查看所有
echo "no user $uname"
esac
函数
交互式shell中的函数
function ***(){ #定义一个函数
#注意:每条命令后都要加;
}***
return 返回值 可以自定义
计划任务 crontab
计划时间内要完成的任务,包已自动安装,并开机自启动
首先需要知道的是,无论是系统级还是用户级的cron计划都是文本文件,系 统的计划文件存放在/etc/crontab路径下。用户的计划文件放在/var/spool/cron/用户名,不管是哪一种,都可以满足我们定制计划任务的需求。
root用户可以直接对文件进行修改来编写计划任务也可以使用 crontab -e命令,而普通用户只能使用后者。除此之外,系统crontab文件中任务的定义也有所不同,在前五个部分之后插入了一个“用户”部分。
语法 :
crontab -e -u 用户名(权限)
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 -l date +%F_%T 时间格式
实例:
* * * * * echo ' date +%F_%T ' >> /tmp/test.log 每分钟将数据打印到log文件中
查看cron服务是否起作用:
如果我们要查看定时任务是否准时调用了可以/var/log/cron中的运行信息
cat /var/log/cron
也可以用tail -f /var/spool/mail/用户名,来查看普通用户的计划任务执行情况
此处需要记住两点:
第一:cron 守护进程每分钟都检查 /etc/crontab 文件、etc/cron.d/ 目录、以及 /var/spool/cron 目录中的改变。如果发现了改变,它们就会被载入内存。这样,当某个 crontab 文件改变后就不必重新启动守护进程了。
第二:crontab的用户手册中推荐每一个命令使用绝对路径,例如调用rm命令时写作:/bin/rm,这是为了防止由于每一个用户的PATH环境变量不同而导致命令无法找到的错误。
举例:
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
每半小时同步一下时间
转载于:https://www.cnblogs.com/zh605929205/p/6624397.html
开发环境入门 linux基础 (部分)while for 函数 计划任务相关推荐
- p750tm安装linux系统,Android 开发环境(虚拟机,LINUX, secureCRT)安装过程.pdf
Android 开发环境(虚拟机,LINUX, secureCRT)安装过程 Android linux 开发环境(虚拟机,LINUX, secureCRT )安装过程 注意 由于selinux 打开 ...
- java开发环境及数据类型实验_实验项目1 Java开发环境与语言基础
<实验项目1 Java开发环境与语言基础>由会员分享,可在线阅读,更多相关<实验项目1 Java开发环境与语言基础(14页珍藏版)>请在人人文库网上搜索. 1.实验项目1 Ja ...
- iphone 3.1.2开发环境搭建——linux平台
iphone 3.1.2开发环境搭建--linux平台 一.引子 前段时间看到了apple公司发布了iphone os4.0的预览视频,iphone终于打算支持多任务了,尤其是对于预览视频中的skyp ...
- (嵌入式)ARM开发环境入门-----一个简单的LED灯闪烁的实现
ARM开发环境入门 一.一个简单的LED灯闪烁程序 1.1.工具 1.2.步骤 1.2.1.我们需要创建一个uVision Project 1.2.2.取名保存 1.2.3.这里选择我们需要的芯片类型 ...
- 让你提前认识软件开发(51):VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改
第3部分 软件研发工作总结 VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改 [文章摘要] Pclint是一种C/C++软件代码静态分析工具.它是一种更加严格的编译器,能够发 ...
- XBOOT集成开发环境入门指南
xboot集成开发环境之Eclipse 安装Eclipse集成开发环境 启动Eclipse集成开发环境 导入xboot源码 编译xboot源码 在模拟器中运行xboot 调试xboot 编译xboot ...
- bash: go: 未找到命令_golang快速入门[2.3]-go语言开发环境配置-linux
linux安装Go语言开发包 默认读者会使用linux的基本操作 配置go语言的开发环境的第一步是要在go官网下载页面下载开发包 linux需要下载tar.gz压缩文件 这里我们下载的是 64 位的开 ...
- php开发环境搭建和基础入门
转载:http://blog.csdn.net/ziyuanxiazai123/article/details/7585068 本节要点: 1.搭建php开发环境 2.初始php 3.B/S和C/S的 ...
- 纯小白入门Linux基础
目录 第1章 环境搭建 1.1 虚拟机的网络配置 1.2 虚拟机联网 1.3 vmtools工具 1.3.1 作用: 1.3.2 步骤 1.3.3 共享文件夹 第2章 Linux的目录结构 第3章 远 ...
最新文章
- spi nor flash使用汇总
- matlab中libsvm 3.11,libsvm-3.11(matlab)
- 字典写入excel_使用Python扫描邮件/填写Excel表格实现办公自动化
- 矩陣 线性递归 斐波那契實現
- .NET Core 项目指定SDK版本
- html网页加入一个按钮,在html网页设计中,一个“登录”按钮怎么编写代码?
- MediaPlayer 播放视频的方法
- python 安装容易吗,Python安装的步骤操作其实是件很容易的事
- GPS时间服务器在电力监控系统中的应用方案
- Beginning Python chapter 1 Instant Hacking The Basics 2: Comments Strings
- 华硕笔记本电池0%充不进电_华硕笔记本电池不充电怎么办
- python ftp下载上传文件或文件夹
- 走近网球运动·与棒球相似的体育项目·第一堂棒球课
- 计算机大纲级别怎么设置,word 怎样修改大纲级别的字体?
- Mac上使用docker环境进行C++开发的实践
- 【转】解决win10系统每次重启桌面图标排列混乱的问题!亲测有效!!
- FFmpeg 音视频转封装(MP4与FLV互转,流数据转FLV、MP4)
- Unity 3D 面试 数据结构与算法简述
- “npm”‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
- CAST和VALIDATE_CONVERSION函数 db官方例子
热门文章
- LeetCode4. 寻找两个有序数组的中位数
- Web前端笔记(9) flex布局
- Web前端笔记(8) 管后台理页面
- virtual memory exhausted: Cannot allocate memory Linux虚拟内存不足,扩展虚拟内存的解决办法
- highlight.js css,JS库之Highlight.js的用法详解
- softether linux 客户端,SoftEther centos 服务器搭建 及 客户端连接
- 新加坡金融管理局主席:数字货币会使传统风险变得更加明显
- (组合数学3.1.2.1)POJ 2249 Binomial Showdown(排列组合公式的实现)
- Django实现简单的用户添加、删除、修改等功能
- Spark Yarn-cluster与Yarn-client