场景介绍:

在Linux中,我们通常开启服务需要使用systemctl start 服务名 命令,这样,如果开启一个服务还好,但是如果同时开启多个服务,难免会感到麻烦,这时,我们可以自定义一个脚本,去把多个开启服务的命令集合到一起,我们只需要执行脚本 即可快速开启多个服务。

一、代码

cd /    #进入根目录

mkdir myScript     #创建文件夹

vim init.sh     #编辑init.sh,然后保存

#!/bin/sh
#用于开机后,快速同时启动指定服务的脚本
systemctl start nginx
systemctl start redis-server
echo nginx和redis已经启动完毕
systemctl status nginx
systemctl status redis-server

chmod 777 init.sh    #赋予文件执行权限

/myScript/init.sh    #执行init.sh

注:这里,我在脚本里定义了开启nginx和redis服务,并且开启之后输出提示语句,查询nginx和redis状态,确认开启完毕。

二、效果展示

注:直接执行指定目录中的指定文件

三、Linux写定时脚本

在业务场景中,定时脚本也会时有用到,这里再额外介绍下怎么写定时脚本

注:这里使用的是crontab

1、crontab -e  #写定时任务

2、* * * * * /myScript/task_test.sh #在文件中添加这一行,然后保存(每分钟执行一次task_test.sh文件)

3、task_test.sh代码

#!/bin/sh
echo yes >> /data/task_test.txt

注意:编辑完task_test.sh,需要赋予文件权限,chmod 777  /myScript/task_test.sh

4、过几分钟后,查看/data/task_test.txt

说明定时任务执行成功。

注:

1、crontab参数

-e  编辑该用户的计时器设置。

-l  列出该用户的计时器设置。

-r  删除该用户的计时器设置。

-u<用户名称>  指定要设定计时器的用户名称。

2、crontab格式

crontab 格式:分钟   小时   日   月   周   command

第1列表示分钟 0~59 (每分钟用*或者 */1表示)

第2列表示小时 0~23(0表示0点)

第3列表示日期 1~31(5表示5号)

第4列 表示月份 1~12(1表示1月份)

第5列表示星期 0~7(0或者7表示星期日)

第6列表示要执行的命令(可以是系统命令,也可以是自己编写的脚本文件)

3、在以上各个字段中,还可以使用以下特殊字符:

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”

中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

示例:

30 21 * * * /myScript/task_test.sh  就表示 每天的21:30执行一次task_test.sh文件

30 21 5 * * /myScript/task_test.sh 就表示 每个月的5号21:30执行一次task_test.sh文件

1 6 20 8 * /myScript/task_test.sh 就表示 8月20号06:01执行一次task_test.sh文件

30 2 * * 1,2,3,4,5 systemctl restart nginx 就表示 每个工作日的2:30重启nginx服务

* 23-7/1 * * * systemctl restart smb  就表示晚上11点到早上7点之间,每隔一小时重启smb

注:了解更多,可以访问:https://www.cnblogs.com/intval/p/5763929.html

Linux中写脚本,同时去开启我们自己设定的多个服务(含定时脚本实现)相关推荐

  1. 如何在Linux中写C代码

    前提条件:所安装的 Linux 安装有vi/vim 以及 gcc 安装方法: ubuntun系列: Ubuntu 下安装 gcc 教程_Wonz-CSDN博客_如何在ubuntu上安装gcc Redh ...

  2. linux中写脚本一般用语言,shell脚本语言的使用(超全超详细)

    1.shell的概述 shell 是一种脚本语言 脚本:本质是一个文件,文件里面存放的是 特定格式的指令,系统可以使用脚本解析器 翻译或解析 指令 并执行(它不需要编译) shell 既是应用程序 又 ...

  3. Linux中写C代码进行文件读写与权限修改等各类操作

    C查看当前文件的权限 #include <unistd.h> #include <stdio.h> int main(int argc,char* argv[]) {char ...

  4. cron 每年执行一次_crontab服务执行定时脚本,在指定时间内让php执行处理业务逻辑...

    技小白 2019-12-19 11:45:33 crontab-e编辑某个用户的cron服务设置执行脚本crontab-l列出某个用户cron服务列表信息crontab-r删除某个用户的cron服务 ...

  5. linux中写脚本不能写中文,Linux系统中Sublime Text无法输入中文怎么办?

    Sublime Text是一个代码编辑器,拥有强大的功能,但Sublime Text 在Linux下运行的时候存在无法输入中文的问题,遇到该问题该如何解决呢?下面小编就给大家介绍下Linux下Subl ...

  6. linux中写crontab脚本,Linux中crond服务与crontab用法

    需要写个在Linux下定时更新系统的脚本,man crondtab 不甚详细,现将网络上的介绍列举如下: crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cr ...

  7. 在linux中写php语言吗,将PHP作为Shell脚本语言使用

    我们都知道,PHP是一种非常好的动态网页开发语言(速度飞快,开发周期短--).但是只有很少数的人意识到PHP也可以很好的作为编写Shell脚本的语言,当PHP作为编写Shell脚本的语言时,他并没有P ...

  8. 开发环境 -- 在linux中写一个脚本拷机

    遇到一个问题,x86板卡通过PCIE外接网卡芯片82599,某一块板子过一会出现网络不通的问题,排查发现某一时刻系统出现如下异常: [ 1250.888189] Uhhuh. NMI received ...

  9. linux中写如空格参数,Vim中Tab与空格缩进

    vim缩进参数解析 缩进用 tab 制表符还是空格,个人爱好问题.但是在大多项目中,习惯使用空格.关于缩进,vim中可以通过如下四个参数进行配置 set tabstop=4 set softtabst ...

最新文章

  1. 盘点丨2017年亚洲新晋18家独角兽公司
  2. phpnow升级mysql版本_PHPnow 升级后 PHP不支持GD、MySQL 枫
  3. USB协议基础知识笔记
  4. C# 3.X -- the newest features
  5. vba 不等于_EXCEL中VBA基础语句(1)
  6. 数据结构之线段树Ⅴ——(李超线段树)Robot,Product Sum,Building Bridges,Jump mission
  7. tls 使用java生成_同时使用传入和传出连接时,相互TLS身份验证存在Java问题
  8. 已知有几个数据存放在BUF为首址的字节存储区中,试统计其中正数的个数,并将结果存入ZNUM单元中。
  9. file数组 删除文件_java编程IO基础之一:File类
  10. centOS6.6虚拟机启动后登陆界面无法显示
  11. 提高网站性能的方法(学习笔记)
  12. J.U.C并发框架源码阅读(二)AbstractQueuedSynchronizer
  13. Teorex Inpaint v9.0.1 图片去水印软件中文便携单文件免费版
  14. dns外带数据【渗透测试】
  15. Word中页眉文字下横线如何变化粗细线型,页脚文字上方如何添加横
  16. 【浪漫程序员系列】情人节给女友写代码表达爱意,让她感动到哭
  17. AutoJs学习-录制手指动作
  18. STM32 (基于HAL库) 硬件IIC读写任意AT24CXX芯片
  19. 论文中如何写mysql的介绍_论文中数据库概念设计怎么写
  20. 网站推荐(3)——黑马Java学习路线

热门文章

  1. 万字长文,带你彻底理解EF Core5的运行机制,让你成为团队中的EF Core专家
  2. NET问答: 如何将 ASP.NET Core WebAPI 中抛出的异常封装成对象?
  3. 穿背心的老院士,86岁,重病,还在敲代码,单手!
  4. .NET工资低?那肯定是你打开的方式不正确
  5. 引入Jaeger——使用
  6. 做权限认证,还不了解IdentityServer4?不二话,赶紧拥抱吧,.NET Core官方推荐!...
  7. 使用 VMware + win10 + vs2019 从零搭建双机内核调试环境
  8. .NET Conf 2019 今天在上海开幕,图片直播地址
  9. 队长开卖自家产“翠香”猕猴桃
  10. Orleans 知多少 | 2. 核心概念一览