Linux shell编程一:登录欢迎脚本和管理系统服务脚本

登录欢迎脚本

在用户目录/root下编写存储welcome1.sh脚本,赋予执行权限,并在~/.bash_profile中调用该脚本,使得在用户登录时显示欢迎信息。

#!/bin/bash
#by lxl 

# 变量定义
date=$(date)
user=$(whoami)
uptime=$(uptime)
version=$(uname -a)
ip=$(ifconfig -a ens32|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:")

red='\033[31m' 
blue='\033[34m' 

#显示信息
echo -e " "
echo -e "${blue}本机IP: ${red}"$ip
echo -e "${blue}时间: ${red}"$date
echo -e "${blue}当前用户: ${red}"$user
echo -e "${blue}系统运行时间: ${red}"$uptime
echo -e "${blue}版本信息: ${red}"$version
echo -e " "

编写后添加执行权限
chmod a+x welcome1.sh
在这里插入图片描述
在~/.bash_profile中调用该脚本
Linux shell编程一:登录欢迎脚本和管理系统服务脚本_第1张图片
测试:
Linux shell编程一:登录欢迎脚本和管理系统服务脚本_第2张图片

管理系统服务脚本

在/root/bin目录下编写status、 start、stop脚本,可以根据脚本后面的服务名称分别显示服务状态、开启服务、停止服务
提示:

  1. 通过$1获取服务名称
  2. 判断/etc/init.d/目录下是否存在同名文件
    A. 如果文件不存在,提示不存在这个服务
    B. 如果文件存在,则执行这个文件,带上status、 start、stop参数
  3. 赋予脚本文件执行权限,执行脚本检查效果,截图

开启服务脚本
start.sh

#!/bin/bash
#start.sh by lxl
if [ -f /etc/init.d/$1 ];then   # 判断文件是否存在
	echo "$1 exists"
	systemctl start $1	#启动服务
else
	echo "No such file!"
fi

stop.sh

#!/bin/bash
#stop.sh by lxl
if [ -f /etc/init.d/$1 ];then   # 判断文件是否存在
        echo "$1 exists"
        systemctl stop $1      #停止服务
else
        echo "No such file!"
fi

status.sh

#!/bin/bash
#status.sh by lxl
if [ -f /etc/init.d/$1 ];then   # 判断文件是否存在
        echo "$1 exists"
        systemctl status $1      #查看服务状态
else
        echo "No such file!"
fi

以上三段代码其实就是systemctl start/stop/status service 的替代

每天进步一点点。

你可能感兴趣的:(Linux,linux)