神奇!一个命令切换测试和线上环境?

大家好,我是喜欢折腾,热爱分享的"一只韩非子 "。

关注微信公众号:会编程的韩非子

添加微信号:Hanfz0712

免费加入问答群/知识交流群,一起交流技术难题与未来,让我们Geek起来!

今天跟大家分享一个小Tips,让大家能够更快的切换测试和线上环境。

1.前因

不知道大家会不会在开发中经常遇到需要切换测试环境和线上环境。比如本地开发完成后需要部署到测试环境查看,然后就需要在我们的主机上配置测试环境的DNS,从而使得相同的域名能够从线上指向到测试环境。

我们发现,需要点啊点啊点,真的太头痛了。估计配置玩这个,代码已经忘记写到哪一行了。


所以我们有没有更简单的方式来配置DNS呢,经过小韩一顿小脑瓜的思考,想起来那我们能不能够通过命令行代码的方式来解决这个问题呢。哎,你别说还真可以。

一般系统级的配置除了可视化操作外,会有对应的命令行代码(划重点喽)

2.上命令

又是熟悉的一顿Goole后,终于让我找到了,出来吧,My Code!

bash 复制代码
# 配置DNS
# Mac
networksetup -setdnsservers Wi-Fi x.x.x.x

# Windows
# WiFi
netsh interface ip set dns name="Wi-Fi" static x.x.x.x
# 网线 具体网线连接的名称例:本地连接、以太网...
netsh interface ip set dns name="具体网线连接的名称" static x.x.x.x

哎没错,就是上面这几个。但是!但是!但是!这他喵的也真的太长了!!!我还不如点啊点啊点!好好好把我骗进来杀是吧。

别急别急,知道好兄弟记不住,所以我还有一招。那就是别名
友情提示:记忆力非常不错手速又特别快的好兄弟,可以点击左侧页面第一个大拇指和第三个小星星,然后退出群聊了。

3.什么是别名?

那么什么是别名呢?,让我们Google一波,找到你了。

啊?不对不对,搜索的姿势不对,让我们换个姿势。

这下姿势就对了,我们得到了我们的答案,原来别名就是用一个简单的命令替代完整的命令,好兄弟们有福了。

4.我要用别名!

别名需要存放在我们的配置文件中,文件的地址是:

Mac:~/.zshrc~/.bashrc。可以通过命令echo $SHELL查看默认使用的是zsh还是bash,来选择对应的配置文件。

Windows:查看文末

在Mac下我们别名的语法为: alias 别名名称='具体的命令'

名称选择一个自己喜欢的即可,但是注意不要与已经注册的别名重复了,我们可以输入alias命令查看已经注册的别名。

所以我们最终的配置为:

shell 复制代码
# 别名配置
# 配置测试环境DNS
alias dtest='networksetup -setdnsservers Wi-Fi x.x.x.x'
# 清除测试环境DNS
alias dclear='networksetup -setdnsservers Wi-Fi empty'

然后我们输入dtest就可以进入测试环境,输入dclear就可以回到线上环境了,你也可以继续配置自己的预发环境等等。这简直太妙了。

最后的最后,留给好兄弟们一个小作业
检索一下Windows下如何配置别名:别名的家在哪里,语法是什么

相关推荐
Patrick_Wilson8 小时前
代码重构中的蚕食方式是什么
程序员·架构·代码规范
Patrick_Wilson9 小时前
你知道 git check 的故事吗
git·程序员·命令行
烬羽9 小时前
《memo 明明加了,为什么子组件还是渲染了?》
react.js·性能优化·全栈
人间凡尔赛10 小时前
2026 前端全栈新范式:Server Actions + Edge Runtime,告别传统 API 路由
前端·全栈·next.js
SemiTris11 小时前
为什么 C/C++ 不走 Java 式的虚拟机跨平台路线?
java·程序员
小溪彼岸11 小时前
终端文件查找工具:fd
命令行
GitLqr14 小时前
Flutter 居然能直接跑在 Apple Watch 上了?玩转 flutter-watchos
flutter·全栈·apple watch
小溪彼岸14 小时前
终端可视化文件管理工具:Yazi
命令行
亚雷17 小时前
图解分布式架构:一个 Console,一群 Sidecar
后端·面试·程序员
AskHarries1 天前
上线后第一天做什么
程序员