惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
IT之家
IT之家
博客园_首页
博客园 - 【当耐特】
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
G
Google Developers Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Recent Announcements
Recent Announcements
F
Fortinet All Blogs
GbyAI
GbyAI
腾讯CDC
H
Hackread – Cybersecurity News, Data Breaches, AI and More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
H
Help Net Security
T
Tailwind CSS Blog
B
Blog RSS Feed
Martin Fowler
Martin Fowler
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
博客园 - 叶小钗
雷峰网
雷峰网
量子位

Bash

Linux bash 脚本监控和重启一个守护进程 Bash Script 代码比较,你认为哪个更加容易理解? 有使用 kitty 当日常终端的老哥吗? 在输入命令时,自动调用 fzf 进行模糊匹配 使用 shell 的 bash -c "functions"时,是不是所有相关的函数都得声明出来? shell 比较浮点数大小的问题,顺便吐槽以下 shell bash-completor:声明式编写 Bash 补全脚本 sudo 改用 pkexec 的问题 sed 如何查找替换反斜杠 lobash 发布 v0.5.0 版本 为什么这样写无法连接(join)数组各项? 如何使用 awk 打印 nginx 404 日志的目录 请教一下,怎么把向终端输入的内容重定向一份到文件? 请教一下 shell 里使用 jq 处理 json 应该怎么写 求一个 wsl2 ubuntu20.04 的默认 /etc/bash.bashrc 如何让 bash 的补全 popup 显示 如何去除 Bash variable expansion 后加的单引号? 初学者写了个 bash 脚本,求大佬点评 tar 使用管道的困惑 如何获取命令标准输出到变量里并保留颜色?或者能不能一边输出一边赋值或判断。 请问如何在 alias 命令里传递参数? Bash 下如何优雅地临时在后台运行程序并易于管理? shell tr -cd 匹配字符串问题 shell 中的 import 能不能支持 as 或 alias 类似功能 Shell 多个文本间隔追加的方法 生产服务器集群被黑了,帮看看这个脚本 如何实现一个符合规范的 shell? 请教下如何检测文件是否存在 bash 里面有 io 多路复用吗? 闲的蛋疼,用 shell 写了个拓扑排序。。。
有个脚本代码的问题
canitnamechange · 2023-12-26 · via Bash

原因:想写一个批量加静态路由的 bat 脚本,适用于不同网段的终端快速配置双网卡上网。

过程:由于是第一次写,也不知道怎么在网上找只能用 gpt3.5 艰难的生成好了所有功能,但是太长了,问了同事 可以用变量缩短,又是一个上午过去了 gpt 被玩坏了发一句抱歉一句然后瞎扯。

route add -p "A" mask 255.255.255.0 "B" 结果:目前是删除路由的那段脚本好了,添加脚本提示一堆看着像不合规的命令输出,这段要实现的是在"A"变量 组里面循环一次,"B"里的下一跳路由用户输入的序号提供,由于用户直接输入的是网段还需要再改写成网关 才行,下面是代码,希望有大佬给指点下,万分感谢:

@echo off
PUSHD %~DP0
TITLE 双网卡配置脚本
mode con cols=60 lines=32
color 3e

:menu
cls
echo.
echo. 请选择内网网段
echo ---------------------------
echo.
echo        0  10.10.6.0
echo        1  10.10.7.0
echo        2  10.10.8.0
echo        3  10.10.9.0
echo        4  10.10.10.0
echo        5  10.10.11.0
echo        6  10.10.12.0
echo        7  10.10.13.0
echo        8  10.10.14.0
echo        9  192.168.200.0
echo        10 192.168.22.0
echo        11 192.168.201.0
echo.
echo.
echo        q  退出
echo.
echo        d  删除路由表
echo.
echo ---------------------------
echo.

echo. 请输入序号:
set /p ID=

if "%ID%"=="q" (
    goto :eof
)

if "%ID%"=="d" (
    goto delete_routes
)

if %ID% LSS 0 (
    goto menu
)

setlocal enabledelayedexpansion

set "routes=10.10.6.0 10.10.7.0 10.10.8.0 10.10.9.0 10.10.10.0 10.10.11.0 10.10.12.0 10.10.13.0 10.10.14.0 192.168.200.0 192.168.22.0 192.168.201.0"
set "gateways=10.10.6.1 10.10.7.1 10.10.8.1 10.10.9.1 10.10.10.1 10.10.11.1 10.10.12.1 10.10.13.1 10.10.14.1 192.168.200.1 192.168.22.1 192.168.201.1"

for /L %%i in (0,1,11) do (
    if "!ID!"=="%%i" (
        set "gw=!gateways%%i!"
        for %%a in (!routes!) do (
            route add -p %%a mask 255.255.255.0 !gw!
            echo 已添加路由: %%a !gw!
        )
    )
)


echo. 添加完成

timeout /t 50 >nul
goto menu

:delete_routes
set "routes=10.10.6.0 10.10.7.0 10.10.8.0 10.10.9.0 10.10.10.0 10.10.11.0 10.10.12.0 10.10.13.0 10.10.14.0 192.168.200.0 192.168.22.0 192.168.201.0"

for %%r in (%routes%) do (
    route delete %%r
    echo 已删除路由: %%r
)

timeout /t 1 >nul
echo. 删除完成
goto :menu