shell 编程1

1、if循环

标准格式是:
if [ conmmend1 ] ; then 
echo "123"
elif [ conmmend2 ] ; then 
echo "456"
else
echo "789?"
fi # 判断结束,以fi结尾

此时就入坑了,由于是手写的,一直报错syntax error near unexpected token ‘then’。后来才发现,是空格的问题,‘[’前后都有空格,‘]’前后也都有空格。

2.linux 给变量赋值

这个看似很简单,没啥难度,例如:

var = “abc” echo $var;

习惯了java编程,直接这么写的,但是也是一直报错,各种度娘无果,感觉是不是登陆用户不是root造成的,然后切换到root用户之后,依然是不能正确赋值。然后开始各种比对,才发现,赋值的时候,‘=’前后不能有空格!!

var=“abc” echo $var;

这样才可以。

3、时间戳

1、显示当前时间

echo `date +%s`

注意,是英文下esc下面那个按键,不是单引号
2、字符串转换为时间戳

echo `date -d "2017-11-11 11:11:11" +%s`

4、linux下加减计算

if [ `expr $t1 - $t2` -gt 300 ] ; then
echo "haha"
fi;

5、定时任务crontab

1、查询

crontab -l

2、修改

crontab -e

修改之后立即生效,无需重启
3、格式
基本格式:
*  *  *  *  *  command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用或者 /1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

1、每1分钟执行一次command
* * * * * command

2、每小时的第10和第30,第50分钟执行
10,30,50 * * * * command

3、在上午5点到10点的第5分钟执行
5 5-10 * * * command

4、每隔五天的上午5点到10点的第5分钟执行
5 5-10 */5 * * command

5、每个星期一的每十分钟执行一次
*/10 * * * 1 command

6、每月5日的3 : 15执行
15 3 5 * * command

7、每小时的0分执行一次
0 * * * * command

8、每10分钟执行一次command
*/10 * * * * command

猜你喜欢

转载自blog.csdn.net/wzqllwy/article/details/78430215