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

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

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

添加微信号: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下如何配置别名:别名的家在哪里,语法是什么

相关推荐
不是株2 天前
零到全栈(网页从哪来,服务器怎么架)
全栈
duyacode2 天前
FastAPI为什么成为默认答案
程序员
Ticnix2 天前
42 天 71 次提交之后,我重新看了一遍自己的架构决策
python·agent·全栈
Java_AI工程师2 天前
90%的人写Function Calling,只写了"把参数传给工具执行"这一步,剩下的参数校验、错误重试、超时控制、结果格式化,全是空白。
java·人工智能·程序员
Hilaku2 天前
为什么死磕 1px 的团队,用户体验反而更差?
前端·javascript·程序员
codigger2 天前
我用 AI 做完整项目后,总结出一套把需求钉死的工作流
ai·程序员·编程·ai编程·#人工智能
SimonKing2 天前
SpringBoot 集成 SSE 实现服务端推送或可代替Websocket
java·后端·程序员
挖掘狂人2 天前
用 AI 写代码别只甩一句指令,这套工作流救过我的项目
程序员·ai编程·codebuddy
Sam_Deep_Thinking2 天前
关于java final关键字的可见性
java·后端·面试·程序员
狂师2 天前
cloudflared,不需要服务器和公网 IP 的免费内网穿透,一条命令上手
服务器·程序员·开源