全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1274|回复: 11

[Windows VPS] 问大佬一个shell问题。有偿

[复制链接]
发表于 2019-4-1 22:33:35 | 显示全部楼层 |阅读模式



比如执行


./test.sh add bai 192.0.0.1         就可以添加白名单ip到指定xml文件里面
./test.sh add hei 192.0.0.1         就可以添加黑名单ip到指定xml文件里面

./test.sh del bai 192.0.0.1         就可以删除白名单ip
./test.sh del hei 192.0.0.1         就可以删除黑名单ip

发表于 2019-4-1 23:11:39 | 显示全部楼层
获取文件中黑白名单的行号,判断命令是加还是删除,判断IP是否在列表里面,再进行对应行或者上一行进行删减和增加。
awk  和 sed 用起来啊
发表于 2019-4-2 00:03:49 来自手机 | 显示全部楼层
直接传参数echo整个文件,小白写法
发表于 2019-4-2 00:50:19 来自手机 | 显示全部楼层
学习学习,shell学好了还是很方便
发表于 2019-4-2 00:54:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2019-4-2 14:04:56 来自手机 | 显示全部楼层
楼上都提出了方法,楼主可以去做了呀~要么就真的一点不会,那直接找人做好了。//另外,IP黑白名单不是网页上用得多?那为什么不用数据库做,不管mssql还是mysql或者sqlite3,都可以。
发表于 2019-4-2 21:36:51 | 显示全部楼层
#!/bin/bash

if [ "$1" = "add" ];then
        if [ "$2" = "white" ];then
                sed -i "/\/rule_web_access_white_list/i \ \ \ \ <item>"$3"</item>" demo.xml
        elif [ "$2" = "black" ];then
                sed -i "/\/rule_web_access_black_list/i \ \ \ \ <item>"$3"</item>" demo.xml
        else
                :
        fi
elif [ "$1" = "del" ];then
        sed -i "/"$3"/d" demo.xml
else
        :
fi
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-27 09:22 , Processed in 0.076808 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表