shell脚本

1、一键安装部署nginx

这里采用二进制安装,编译安装速度很慢,需要make

#!/bin/bash
#新建用户
useradd -s /sbin/nologin syq

#下载
mkdir -p /lianxi/syq
cd /lianxi/syq
curl -O https://nginx.org/download/nginx-1.21.6.tar.gz

#解压
tar xf nginx-1.21.6.tar.gz
cd nginx-1.21.6

#解决依赖关系
yum install pcre2 pcre2-devel zlib zlib-devel openssl openssl-devel -y

#配置
./configure --prefix=/usr/local/syq  --user=syq  --with-threads  --with-http_ssl_module --with-http_v2_module

#编译
make -j 2

#安装
make install

#修改PATH变量
PATH=/usr/local/syq/sbin/:$PATH
echo 'PATH=/usr/local/syq/sbin/:$PATH' >>/root/.bashrc

#启动nginx
if pidof nginx &>/dev/null ;then
    echo "nginx is running"
          killall -9 nginx
	      nginx
else
	nginx
fi

2、批量新建用户并设置密码

用户名和密码从文本文件 name.txt 中获取
name.txt文件

hujin  123666
liuxin  abc888
liwen  666789

脚本

#!/bin/bash
while read user passwd
do 
    useradd $user
    echo $passwd |passwd $user --stdin
done < name.txt

3、局域网扫描工具

获得整个局域网里哪些ip地址在使用,哪些没有在使用,同时显示在使用的ip地址对应的mac地址
写到文件里: up.txt 保存正在使用的ip以及对应的mac地址
		   down.txt 保存没有使用的ip地址
#!/bin/bash

#清空文件
>up.txt
>down.txt
#查看当前子bash的pid号
echo $$
num=$(echo $$)
#查看过滤出当前子bash的父进程号
pstree -p |egrep $num

#循环ping整个局域网里的ip地址
for i in {1..254}
do
	#启动多进程去ping,提升效率,启动子进程放到后台去执行
	(if ping -c 1  -W 1  192.168.2.$i  &>/dev/null ;then
		echo "192.168.2.$i is up"
	else
		echo "192.168.2.$i is down"
		echo "192.168.2.$i" >>down.txt
	
	fi)&
done
#等待子进程结束,然后再退出
wait
#将arp缓存表里的记录保存到up.txt
arp -n|awk '/ether/{print $1,$3}' >up.txt
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值