配置文件格式转换,别再手动改了
在家搭OpenWrt或者刷Padavan这类固件时,经常会遇到一个问题:从别人那儿搞来的配置是JSON格式,而你的系统只认YAML。以前我都是一个字段一个字段手敲,折腾半小时还容易出错。后来发现一套顺手的工具链,几分钟就能搞定转换。
比如把network.json转成network.yaml,直接用命令行工具yq就行:
cat network.json | yq -P这工具支持双向转换,还能过滤字段,特别适合做路由器网络配置的批量处理。
设备间参数迁移的小帮手
换主路由的时候最头疼的就是重新输入所有VLAN、DHCP和防火墙规则。有个办法是先把旧设备导出为JSON,然后用jq提取关键段落,再套个模板生成新设备能导入的格式。
举个例子,从旧配置里拎出所有无线SSID和密码:
jq \'.wireless | to_entries[] | .value.ssid + \": \" + .value.key\' config.json配合shell脚本,一套操作下来,十分钟完成参数平移,连手机都不要断网太久。
可视化编辑也不耽误
不是所有人习惯敲命令。如果你更喜欢点鼠标,推荐用VS Code配上Prettier和YAML插件。打开任意配置文件,右键“格式化文档”,自动对齐缩进;装个vscode-json2yaml扩展,还能一键切换格式。
有时候家里亲戚让你帮忙调网络,用这种图形化方式现场改,比命令行显得友好太多,也不会一不小心删掉大括号。
自动化脚本串联流程
我把常用转换打包成一个小工具集,放在树莓派上跑。比如收到一个TOML格式的Mesh配置,自动转成当前固件支持的格式,并通过SSH推送到目标设备。
核心脚本长这样:
#!/bin/bash\nif [[ $1 == *.toml ]]; then\n docker run --rm -i toml2json < $1 | yq -P > converted.yaml\nfi整个过程不需要登录路由器后台,适合远程协助家人调试网络。
这些工具用熟了之后,折腾家用网络变得像搭积木一样轻松。不同品牌设备来回切也不怕,格式乱七八糟都能理顺。”,"seo_title":"无线组网中高效的转换工具链推荐","seo_description":"分享几款实用的配置转换工具链,帮助你在家庭无线组网时快速完成格式转换与参数迁移,提升效率少踩坑。","keywords":"转换工具链推荐,无线组网工具,配置文件转换,openwrt配置,yaml转json,jq命令使用"}