<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>效率工具归档 - 枫阿雨&#039;s blog</title>
	<atom:link href="https://www.crazyfay.com/tag/%E6%95%88%E7%8E%87%E5%B7%A5%E5%85%B7/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.crazyfay.com/tag/效率工具/</link>
	<description>CrazyFay</description>
	<lastBuildDate>Tue, 05 Dec 2023 06:27:56 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.2</generator>

<image>
	<url>https://www.crazyfay.com/wp-content/uploads/2023/04/cropped-DockerGopher-32x32.png</url>
	<title>效率工具归档 - 枫阿雨&#039;s blog</title>
	<link>https://www.crazyfay.com/tag/效率工具/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>&#8220;熟练掌握Windows环境下的开发&#8221;</title>
		<link>https://www.crazyfay.com/2023/04/21/%e7%86%9f%e7%bb%83%e6%8e%8c%e6%8f%a1windows%e7%8e%af%e5%a2%83%e4%b8%8b%e7%9a%84%e5%bc%80%e5%8f%91/</link>
					<comments>https://www.crazyfay.com/2023/04/21/%e7%86%9f%e7%bb%83%e6%8e%8c%e6%8f%a1windows%e7%8e%af%e5%a2%83%e4%b8%8b%e7%9a%84%e5%bc%80%e5%8f%91/#respond</comments>
		
		<dc:creator><![CDATA[crazyfay]]></dc:creator>
		<pubDate>Fri, 21 Apr 2023 06:28:17 +0000</pubDate>
				<category><![CDATA[实践经验]]></category>
		<category><![CDATA[效率工具]]></category>
		<guid isPermaLink="false">https://www.crazyfay.com/?p=272</guid>

					<description><![CDATA[<p>熟练掌握Windows环境下的开发 前记：如果不是生活所迫，谁想用Windows作为开发环境呢？ Window [&#8230;]</p>
<p><a rel="nofollow" href="https://www.crazyfay.com/2023/04/21/%e7%86%9f%e7%bb%83%e6%8e%8c%e6%8f%a1windows%e7%8e%af%e5%a2%83%e4%b8%8b%e7%9a%84%e5%bc%80%e5%8f%91/">&#8220;熟练掌握Windows环境下的开发&#8221;</a>最先出现在<a rel="nofollow" href="https://www.crazyfay.com">枫阿雨&#039;s blog</a>。</p>
]]></description>
										<content:encoded><![CDATA[<h1>熟练掌握Windows环境下的开发</h1>
<blockquote>
<p>前记：如果不是生活所迫，谁想用Windows作为开发环境呢？</p>
</blockquote>
<p>Windows是一个好的操作系统，但绝对不是个最适合开发者的OS。穷学生又没钱上Mac，Linux的各个发行版虽然好用，但是生态又不够完整，一些开发之外的其他需求难以满足，想尝试远程开发环境，却发现延迟高的要死，性能实在拉跨。所以看来看去还是只能将就着使用Windows作为自己的开发环境。</p>
<p>本文则是我这几年来使用Windows作为开发环境的过程对提升使用体验各种摸索后得到的结果。</p>
<h2>善于Windows的快捷键</h2>
<p>我想多数开发者都更希望减少鼠标的操作，能用键盘解决的都用键盘解决，手能不离开键盘就不离开（典型的就是vim神教），虽然大家都说Windows的种种不是，但是其实Windows系统对快捷键的支持其实还是很优秀的。下面我将尽可能全面的列举一些我平时经常能够用到的快捷键，<strong>注意！本部分的快捷键针对于Windows11，Win11以下的版本可能有些许不同，但大体上还是一致的。</strong></p>
<h3>Win系快捷键</h3>
<h4>win + 数字</h4>
<p>★★★★☆</p>
<p>打开任务栏对应位置的应用，按住win点击对应数字进行切换，如果同时按住shift会打开新窗口，如果同时按住ctrl + shift会以管理员身份打开新窗口</p>
<blockquote>
<p>这个快捷键比较有用，尤其是配合ctrl + shift，如果你把终端放到了底部任务栏，那么就可以快捷地以管理员身份打开终端，否则会一管理员身份打开会有些许麻烦</p>
</blockquote>
<h4>win + Q</h4>
<p>★★☆☆☆</p>
<p>windows自带搜索，</p>
<blockquote>
<p>Q是Query的意思</p>
</blockquote>
<h4>win + E</h4>
<p>★★★☆☆</p>
<p>打开快速访问文件夹</p>
<blockquote>
<p>用来查找一些最近打开的文件目录或者打开此电脑比较方便，我的一个使用习惯是进入到快速访问文件夹之后用快捷键ctrl + L打开定位到资源导航栏，手动输入&quot;D:/&quot;访问到D盘</p>
</blockquote>
<h4>win + R</h4>
<p>★★★☆☆</p>
<p>打开&quot;窗口&quot;，可以快速访问cmd等</p>
<blockquote>
<p>主要用于打开cmd，但是不能通过此方式以管理员身份运行，可选择ctrl + shift + win + 数字以管理员身份打开终端后新建cmd窗口会话，或者通过win + Q查询cmd，再用鼠标以管理员身份打开</p>
<p>R是Run的意思</p>
</blockquote>
<h4>win + T</h4>
<p>★★☆☆☆</p>
<p>windows底栏应用选择（按空格或者回车后可以打开）</p>
<blockquote>
<p>我一般更多使用alt + Tab切换已打开窗口，主要是我的底部任务栏的内容一般都会被打开XD</p>
<p>T是Tab的意思</p>
</blockquote>
<h4>win + A</h4>
<p>★★☆☆☆</p>
<p>打开设置栏</p>
<blockquote>
<p>偶尔切个Wifi什么的会用到</p>
</blockquote>
<p></p>
<p>win + shifit + S</p>
<p>★★★☆☆</p>
<p>微软自带截图工具，截图保存到剪切板</p>
<blockquote>
<p>可应急使用，功能较简单，使用上不如QQ、Tim、微信截图方便</p>
</blockquote>
<p></p>
<h4>win + D</h4>
<p>★★★★★</p>
<p>快速切换到桌面</p>
<blockquote>
<p>应用场景非常非常多，尤其当你打开了一堆页面之后，快速切到桌面非常的爽</p>
<p>D是Desktop的意思</p>
</blockquote>
<h4>win + G</h4>
<p>★☆☆☆☆</p>
<p>xbox bar 游戏相关</p>
<blockquote>
<p>可以用来录屏</p>
<p>G是Game的意思</p>
</blockquote>
<h4>win + L</h4>
<p>★★★☆☆</p>
<p>锁屏</p>
<blockquote>
<p>快速锁屏，写完代码要出去走动走动，win + L一下子锁好屏幕感觉用起来比较舒服，但是貌似我用到的场景不多，毕竟我经常懒得锁屏XD，（进入锁屏界面后，按空格或者回车可以触发登录按钮）</p>
<p>L是Lock的意思</p>
</blockquote>
<h4>win + Z</h4>
<p>★★☆☆☆</p>
<p>快速屏幕分页</p>
<blockquote>
<p>分页规则很清晰，但是我一般用win + 上下左右 更多一些</p>
</blockquote>
<h4>win + X</h4>
<p>★☆☆☆☆</p>
<p>相当于右键开始按钮</p>
<blockquote>
<p>点开之后可以通过上下+空格/回车或者alt+提示的快捷键打开别的功能界面（也可以用来快速以管理员身份打开终端），有用，但是又没有那么有用</p>
</blockquote>
<h4>win + V</h4>
<p>★★★★★</p>
<p>剪切板</p>
<blockquote>
<p>离不开的功能，非常非常非常有用</p>
</blockquote>
<h4>win + B</h4>
<p>★★★☆☆</p>
<p>定位到图标栏</p>
<blockquote>
<p>直接定位到隐藏栏的箭头，再点击空格或者回车可以打开隐藏栏，也可以通过左右键操作隐藏栏右侧的各个菜单</p>
</blockquote>
<h4>win + N</h4>
<p>★★☆☆☆</p>
<p>打开通知和日期</p>
<blockquote>
<p>想看日历可以用</p>
<p>N是Notice的意思</p>
</blockquote>
<h4>win + M</h4>
<p>★★★☆☆</p>
<p>将已打开的所有应用最小化<br />
和win + D的区别是不能再按一次复原，<br />
Win键+Shift+M 将最小化的窗口还原到桌面</p>
<blockquote>
<p>在屏幕中同一个窗口打开数量过多时可以使用，再通过alt + tab切换到自己想要打开的窗口</p>
</blockquote>
<h4>win + ,</h4>
<p>★☆☆☆☆</p>
<p>按住时显示桌面</p>
<blockquote>
<p>emmmm，使用场景很少</p>
</blockquote>
<h4>win + .</h4>
<p>★★★★☆</p>
<p>v模式中的内容选择栏</p>
<blockquote>
<p>找一些特殊字符的时候很好用</p>
</blockquote>
<h3>浏览器快捷键</h3>
<p>多数浏览器通用，尤其edge与chrome</p>
<h4>ctrl + W</h4>
<p>★★★★★<br />
关闭一个页面</p>
<blockquote>
<p>也可以关闭文件目录，必备不解释XD</p>
</blockquote>
<h4>ctrl + F/G</h4>
<p>★★★★★</p>
<p>搜索</p>
<blockquote>
<p>按关键词搜索，对于懒加载的数据无效哦</p>
</blockquote>
<h4>ctrl + R</h4>
<p>★★★★★</p>
<p>刷新当前页面</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<p>ctrl + T</p>
<p>★★★★★</p>
<p>打开新的空白标签页</p>
<blockquote>
<p>可结合ctrl + L进行搜索，即组合为打开新的标签页并搜索/跳转到新的内容</p>
</blockquote>
<h4>ctrl + U</h4>
<p>★★★☆☆</p>
<p>查看页面源代码</p>
<blockquote>
<p>偶尔用得到</p>
</blockquote>
<h4>ctrl + O</h4>
<p>★☆☆☆☆</p>
<p>在浏览器中范围本地文件</p>
<blockquote>
<p>使用场景较少，偶尔想要快速打开某个文本文件或者pdf看看内容的时候可以用</p>
</blockquote>
<h4>ctrl + shift + O</h4>
<p>★★★★★</p>
<p>打开收藏夹</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<h4>ctrl + P</h4>
<p>★★★☆☆</p>
<p>打印当前界面</p>
<blockquote>
<p>需要保存网页内容时可用，可代替长截图</p>
</blockquote>
<p></p>
<h4>ctrl + H</h4>
<p>★★★★★</p>
<p>浏览记录历史</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<p></p>
<h4>ctrl + D</h4>
<p>★★★★★</p>
<p>收藏当前界面</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<p></p>
<h4>ctrl + J</h4>
<p>★★★★★</p>
<p>浏览下载记录</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<p></p>
<h4>ctrl + L</h4>
<p>★★★★★</p>
<p>定位到浏览器URL框</p>
<blockquote>
<p>可以进行搜索，URL跳转的功能，对于我来说是浏览器的核心快捷键。在Windows目录里也可以使用ctrl + L快速定位到的URL框</p>
</blockquote>
<p></p>
<h4>ctrl + K</h4>
<p>★★☆☆☆</p>
<p>快速搜索</p>
<blockquote>
<p>个人几户不用，完全可由ctrl + L代替</p>
</blockquote>
<p></p>
<h4>ctrl + N</h4>
<p>★★★★★</p>
<p>打开新的窗口，并打开一个空白标签页</p>
<blockquote>
<p>当一个浏览器窗口中的标签页过多时使用，打开一个新的浏览器窗口</p>
</blockquote>
<p></p>
<h4>ctrl + shift + N</h4>
<p>★★★★★</p>
<p>打开新的隐私窗口，并打开一个空白标签页</p>
<blockquote>
<p>隐私窗口不会附带cookie等内容，必备</p>
</blockquote>
<p></p>
<h4>ctrl + 数字</h4>
<p>★★★★☆</p>
<p>切换到第N个标签页</p>
<blockquote>
<p>标签页少的时候可以用，多的时候不是很方便，推荐使用ctrl + Tab替代</p>
</blockquote>
<p></p>
<h4>ctrl + Tab</h4>
<p>★★★★★</p>
<p>切换到右边一个标签页</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<p></p>
<h4>ctrl + shift + Tab</h4>
<p>★★★★★</p>
<p>切换到左边一个标签页</p>
<blockquote>
<p>必备不解释</p>
</blockquote>
<p></p>
<h4>通用快捷键</h4>
<p>ctrl + A</p>
<p>全选</p>
<p>ctrl + S</p>
<p>保存</p>
<p>ctrl + Z</p>
<p>撤销</p>
<p>ctrl + X</p>
<p>剪切</p>
<p>ctrl + C</p>
<p>复制</p>
<p>ctrl + V</p>
<p>粘贴</p>
<blockquote>
<p>通通不解释</p>
</blockquote>
<p></p>
<h3>其他常用快捷键</h3>
<h4>ctrl + shift + N</h4>
<p>★★★☆☆</p>
<p>快速创建文件夹</p>
<h4>ctrl + shift + 左键</h4>
<p>★★★★★</p>
<p>以管理员身份打开应用</p>
<p>★★★★★</p>
<h4>ctrl + shift + Esc</h4>
<p>快速打开任务管理器</p>
<h3>other tips</h3>
<p>选择文本时善用shift进行选择，ctrl进行光标快速移动</p>
<p></p>
<h2>代码环境分离</h2>
<p>因为当代服务端应用绝大多数都是以Linux系统为基础的，所以我们使用Linux作为自己开发环境觉得是更合适的，装双系统切换起来太麻烦，VMWare这类虚拟机又太重，在Windows系统下，我们有个更好的选择，这便是WSL(Windows Subsystem for Linux <strong>适用于Linux的Windows子系统</strong>)。简而言之，就是微软官方提供了一个Windows系统下的Linux系统，我们就可以在Windows系统中通过WSL使用Linux的环境。</p>
<p>目前为止，WSL拥有两个版本WSL1和WSL2，其中WSL1其实更像是在Windows系统上封装一层Linux的接口，而WSL2则是依赖于Hyper-V ，你可以理解为WSL2是利用了Windows原生的虚拟机， 支持完整的Linux内核，且比VMWare等专业的虚拟机应用轻量级许多，而且因为拥有完整的Linux内核，在WSL2上可以使用Docker，更加一步方便了我们环境的搭建。</p>
<p>那我们就先开始吧</p>
<h3>all in wsl2</h3>
<p>首先，确保你的Windows是专业版及以上（不能是学生版、家庭版，否则无法开启WSL，如果非专业版自行搜索升级方法），并且是 Windows 10 版本 2004 及更高版本（内部版本 19041 及更高版本）或 Windows 11 。</p>
<p>可在系统信息或者其他位置查看，如果不满足请升级系统。</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/59af8cbf4c5694ca2cd3e2f8f91b1540.png" alt="截图" /></p>
<p>并确定已开启虚拟化。</p>
<p>可在任务管理器中查看，一般都会默认开启</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/8a7fe49929f2f811b261e57d88efca8d.png" alt="截图" /></p>
<p>进入控制面板-&gt;程序-&gt;启用或关闭 windows 功能</p>
<p>开启虚拟机平台、适用于Linux的Windows子系统以及Hyper-V</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/86c33fb7f37e9278ce01e00133d9fae8.png" alt="截图" /></p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/9091deb6b2321010ae632ba05498b84f.png" alt="截图" /></p>
<p>以管理员权限进入Powershell（可以win+Q搜索Powershell然后再选择以管理员方式打开）</p>
<p>执行以下命令</p>
<pre><code class="language-sh">wsl --install
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
wsl --set-default-version 2</code></pre>
<p>电脑重启之后wsl2应该就已经装好了，我们可以直接在终端里选择打开wsl2，或者在cmd或者powershell中执行</p>
<pre><code class="language-sh">wsl</code></pre>
<p>命令，也会进入wsl的终端。</p>
<p>跟着指引走设置默认用户名和密码就可以使用了。</p>
<h4>配合JetBrains产品体验更佳</h4>
<p>我们可以把项目的代码放在wsl中，这样我们就可以使用linux环境下进行开发了，可以使用linux的系统函数调用，非常的舒服。</p>
<p>我们可以直接使用JetBrains产品，打开或者新建一个wsl中的项目</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/ea24778a34a0a882c857da14d080e37f.png" alt="截图" /></p>
<p>在IDE中打开的终端也是默认wsl的终端</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/5965c2447f903ef13533660b32a28e1e.png" alt="截图" /></p>
<p>于是我们就可以在Linux环境下愉快地coding了~</p>
<h3>善用Docker</h3>
<p>Docker 是一种工具，用于创建、部署和运行应用程序（通过使用容器）。 容器使开发人员可以将应用与需要的所有部件（库、框架、依赖项等）打包为一个包一起交付。 使用容器可确保此应用的运行与之前相同，而不受任何自定义设置或运行该应用的计算机上先前安装的库的影响（运行应用的计算机可能与用于编写和测试应用代码的计算机不同）。 这使开发人员可以专注于编写代码，而无需操心将运行代码的系统。</p>
<p>Docker 容器与虚拟机类似，但不会创建整个虚拟操作系统。 相反，Docker 允许应用使用与运行它的系统相同的 Linux 内核。 这使得应用包能够仅要求主计算机上尚未安装的部件，从而降低包大小以及提高性能。</p>
<p>利用docker安装软件可以省去很多复杂的配置环境，而且也方便未来数据的迁移等工作，Docker是依赖于Linux系统的Namespace，Cgroup和UnionFS实现的，所以本身是不可以运行在Windows操作系统上的，但是有了wsl2这个好东西，Docker也可以基于wsl2在Windows上运行了。</p>
<h4>安装Docker Desktop</h4>
<ol>
<li>
<p>下载 Docker Desktop 并按照安装说明进行操作。</p>
</li>
<li>
<p>安装后，从 Windows 开始菜单启动 Docker Desktop，然后从任务栏的隐藏图标菜单中选择 Docker 图标。 右键单击该图标以显示 Docker 命令菜单，然后选择“设置”。 Docker Desktop 仪表板图标</p>
</li>
</ol>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/docker-starting.png" alt="" /></p>
<ol start="3">
<li>确保在“设置”&gt;“常规”中选中“使用基于 WSL 2 的引擎”。 Docker Desktop 常规设置</li>
</ol>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/docker-running.png" alt="" /></p>
<ol start="4">
<li>通过转到“设置”&gt;“资源”&gt;“WSL 集成”，从要启用 Docker 集成的已安装 WSL 2 发行版中进行选择。 Docker Desktop 资源设置</li>
</ol>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/docker-dashboard.png" alt="" /></p>
<ol start="5">
<li>
<p>若要确认已安装 Docker，请打开 WSL 发行版（例如 Ubuntu），并通过输入 docker --version 来显示版本和内部版本号</p>
</li>
<li>
<p>通过使用 docker run hello-world 运行简单的内置 Docker 映像，测试安装是否正常工作</p>
</li>
</ol>
<blockquote>
<p>安装配置好之后，我们在Powershell和WSL2中都可以使用docker工具</p>
</blockquote>
<h5>docker与docker-compose</h5>
<p>docker-compose是用于定义和运行多容器 Docker 应用程序的工具。通过 docker-compose，您可以使用 .yaml 文件来配置应用程序需要的所有服务。然后，使用一个命令，就可以从 .yaml 文件配置中创建并启动所有服务。</p>
<p>docker-compose是用来运行一组容器服务的，但是也可以用来运行单个容器服务，因为docker-compose部署的容器更具管理上的优势，也是为了方便管理配置信息，我们采用docker-compose来在开发环境中部署一些必要的服务。部署之后就可以通过Docker Desktop直接进行服务容器的管理了</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/a5ef3dd29aedcfbe163bd84c84f094e8.png" alt="截图" /></p>
<h5>docker-compose安装 MySQL</h5>
<p>在你喜欢的地方新建一个文件夹，创建一个docker-compose-mysql.yaml文件，并入以下内容：</p>
<pre><code class="language-yaml">version: &#039;3&#039;
services:
  mysql:
    container_name: mysql8
    image: mysql:8.0.20
    restart: always
    ports:
      - 3306:3306
    environment:
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: root
    volumes:
      - D:/program/data/mysql/data:/var/lib/mysql
      - D:/program/data/mysql/conf:/etc/mysql/conf.d/
      - D:/program/data/mysql/logs:/logs
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1</code></pre>
<blockquote>
<p>请注意，我强烈不推荐在服务器的生产环境下使用Docker部署MySQL这样基础的数据服务，因为这类数据库服务应该建立在更稳定的存储介质上，故不推荐容器部署。但是在个人的开发环境下，使用容器部署可以更便捷和易于管理。</p>
<p>其中volumes将数据挂载到本地磁盘中，可按照需求挂载到指定位置</p>
</blockquote>
<p>在此目录下进入powershell，执行以下命令：</p>
<pre><code class="language-sh">docker-compose -f docker-compose-mysql.yaml up -d</code></pre>
<blockquote>
<p>因为指定的路径是windows下的路径，所以只能在powershell中执行</p>
<p>也可以不进入当前文件夹，但是-f后面的要写出对应.yaml文件的路径</p>
</blockquote>
<h5>docker-compose安装 Redis</h5>
<p>在你喜欢的地方新建一个文件夹，创建一个docker-compose-redis.yaml文件，并入以下内容：</p>
<pre><code class="language-yaml">version: &#039;3&#039;
services:
  Redis:
    container_name: redis6
    image: redis:6.2.7
    restart: always
    volumes:
      - D:/program/data/redis/data:/data
      - D:/program/data/redis/conf/redis.conf:/etc/redis/redis.conf
    ports:
      - 6379:6379
    command: redis-server /etc/redis/redis.conf
</code></pre>
<p>在此目录下进入powershell，执行以下命令：</p>
<pre><code class="language-sh">docker-compose -f docker-compose-redis.yaml up -d</code></pre>
<h5>docker-compose安装 etcd</h5>
<p>在你喜欢的地方新建一个文件夹，创建一个docker-compose-etcd.yaml文件，并入以下内容：</p>
<pre><code class="language-yaml">version: &#039;3&#039;
services:
  Etcd:
    container_name: etcd3
    image: bitnami/etcd:3.5.6
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
    environment:
      - ALLOW_NONE_AUTHENTICATION=yes
    privileged: true
    volumes:
      - D:/program/data/etcd/data:/bitnami/etcd/data
    ports:
      - 2379:2379
      - 2380:2380</code></pre>
<p>在此目录下进入powershell，执行以下命令：</p>
<pre><code class="language-sh">docker-compose -f docker-compose-etcd.yaml up -d</code></pre>
<h2>一些提高体验感的软件</h2>
<h3>clash</h3>
<p>某猫型科学上网客户端，个人感觉比v2ray好用很多，而且可以直接代理wsl2的网络，用起来非常方便</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/53c4d45700d523566628fe6eddb370c9.png" alt="截图" /></p>
<p>这些选项全部都可以打开，配合着写好的代理规则，实现无心智负担的愉快冲浪之旅</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/834c75bbd2cd8d50660ce63197d029dd.png" alt="截图" /></p>
<h3>utools</h3>
<p>非常非常好用的快捷效率工具，我个人已经完全离不开了</p>
<p>你在电脑上想找的每个东西、想做的每件事都可以问一问utools，比如要配置环境变量</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/093a5b79648edb2878891374365ec7f0.png" alt="截图" /></p>
<p>又比如想要快速关机</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/1b805bad12b51ce286728ed338a24019.png" alt="截图" /></p>
<p>快速打开某个应用软件</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/4ecff6f180388fd022fefceba834079e.png" alt="截图" /></p>
<p>快速翻译</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/5e1d0905afbbf1a711467568d1fd77de.png" alt="截图" /></p>
<p>各种工具箱</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/98fe5fe3e452f75a9f7c14fbbd0a2c6a.png" alt="截图" /></p>
<p>还有很好用的markdown工具等等等</p>
<p><img decoding="async" src="https://img-1307890592.cos.ap-chengdu.myqcloud.com/typroa/a8ae56f0d9d9163a0a428480047d0182.png" alt="截图" /></p>
<p>〉 后记：已换mac，诶嘿嘿</p>
<p><a rel="nofollow" href="https://www.crazyfay.com/2023/04/21/%e7%86%9f%e7%bb%83%e6%8e%8c%e6%8f%a1windows%e7%8e%af%e5%a2%83%e4%b8%8b%e7%9a%84%e5%bc%80%e5%8f%91/">&#8220;熟练掌握Windows环境下的开发&#8221;</a>最先出现在<a rel="nofollow" href="https://www.crazyfay.com">枫阿雨&#039;s blog</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.crazyfay.com/2023/04/21/%e7%86%9f%e7%bb%83%e6%8e%8c%e6%8f%a1windows%e7%8e%af%e5%a2%83%e4%b8%8b%e7%9a%84%e5%bc%80%e5%8f%91/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>JetBrains系列产品高效食用指北</title>
		<link>https://www.crazyfay.com/2023/04/20/jetbrains%e7%b3%bb%e5%88%97%e4%ba%a7%e5%93%81%e9%ab%98%e6%95%88%e9%a3%9f%e7%94%a8%e6%8c%87%e5%8c%97/</link>
					<comments>https://www.crazyfay.com/2023/04/20/jetbrains%e7%b3%bb%e5%88%97%e4%ba%a7%e5%93%81%e9%ab%98%e6%95%88%e9%a3%9f%e7%94%a8%e6%8c%87%e5%8c%97/#respond</comments>
		
		<dc:creator><![CDATA[crazyfay]]></dc:creator>
		<pubDate>Thu, 20 Apr 2023 05:35:36 +0000</pubDate>
				<category><![CDATA[实践经验]]></category>
		<category><![CDATA[效率工具]]></category>
		<guid isPermaLink="false">https://www.crazyfay.com/?p=269</guid>

					<description><![CDATA[<p>从我高考完的暑假第一次学习python开始，就使用JetBrains产品Pycharm开始了我的编程之旅，再后 [&#8230;]</p>
<p><a rel="nofollow" href="https://www.crazyfay.com/2023/04/20/jetbrains%e7%b3%bb%e5%88%97%e4%ba%a7%e5%93%81%e9%ab%98%e6%95%88%e9%a3%9f%e7%94%a8%e6%8c%87%e5%8c%97/">JetBrains系列产品高效食用指北</a>最先出现在<a rel="nofollow" href="https://www.crazyfay.com">枫阿雨&#039;s blog</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>从我高考完的暑假第一次学习python开始，就使用JetBrains产品Pycharm开始了我的编程之旅，再后面的IDEA、Goland也都是我最主要的学习与生产力工具，发现我身边的同学很多也都在用JetBrains的产品，但是大多数的使用仅限于作为带有代码高亮与代码提示的大号编辑器来用。于是就有了今天的这篇文章。<br />
JetBrain产品的功能与快捷键基本都大同小异，本篇文章会以Goland为例，分享一下我平时在coding时那些很有的功能与快捷键。</p>
<h2>快捷键</h2>
<p><code>ctrl + shift + F</code> 全局搜索<br />
Goland的全局搜索很给力，用起来也很舒服，<strong>但是</strong>，如果你windows系统，记得一定一定一定要关掉输入法默认的<strong>繁体字切换</strong>的快捷键！否则你将永远无法用快捷键来点开全局搜索！</p>
<blockquote>
<p>我当初踩了这个坑还以为是JetBrains的bug，导致我用了好久好久的grep来进行全局搜索 XD</p>
</blockquote>
<p><code>ctrl + </code> 快速切换模式（背景、快捷键模式）<br />
<code>ctrl + -</code> 收起括号里的内容<br />
<code>ctrl + +</code> 展开括号里的内容</p>
<p><code>ctrl + Q</code> 查看函数的参数<br />
<code>ctrl + W</code> 扩选<br />
<code>ctrl + E</code> 打开最近的文件<br />
<code>ctrl + R</code> 在文件内替换<br />
<code>ctrl + T</code> update project<br />
<code>ctrl + Y</code> 删除本行(不是还原)<br />
<code>ctrl + U</code> 未知<br />
<code>ctrl + I</code> 实现接口<br />
<code>ctrl + O</code> 未知<br />
<code>ctrl + P</code> 未知<br />
<code>ctrl + [/]</code> 向上下找代码块的括号</p>
<p><code>ctrl + A</code> 全选<br />
<code>ctrl + S</code> 保存<br />
<code>ctrl + D</code> 复制到下一行<br />
<code>ctrl + F</code> 页内搜索<br />
<code>ctrl + G</code> 跳转到某行某列<br />
<code>ctrl + H</code> 未知<br />
<code>ctrl + J</code> 生成模板代码<br />
<code>ctrl + K</code> commit<br />
<code>ctrl + L</code> 未知</p>
<p><code>ctrl + Z</code> 撤销<br />
<code>ctrl + X</code> 剪切<br />
<code>ctrl + C</code> 复制<br />
<code>ctrl + V</code> 粘贴<br />
<code>ctrl + B</code> 查看引用信息<br />
<code>ctrl + N</code> 搜索各种东西<br />
<code>ctrl + M</code> 移动视图？</p>
<p><code>ctrl + B/鼠标左键</code> 查看引用信息<br />
<code>ctrl + alt + B</code> 查看接口实现列表<br />
<code>ctrl + 空格</code> 提示，推荐改键<br />
<code>ctrl + tab</code> switcher 个人主要用来快速打开终端<br />
<code>ctrl + /</code> （取消）注释全行<br />
<code>ctrl + shift + ↑/↓</code> 移动本行代码到上一行<br />
<code>alt + ↑/↓</code> 跳转到当前函数/上（下）一个函数<br />
<code>alt + ←/→</code> 切换到左边的窗口/右边的窗口 （终端可用）<br />
<code>ctrl + shift + ←/→</code> 跳转到上一次跳转的位置（DFS式读代码神器）</p>
<p><code>ctrl + 左键（点击文件）</code> 选择跳转目录<br />
<code>双击shift </code>搜索类型、文件</p>
<p><a rel="nofollow" href="https://www.crazyfay.com/2023/04/20/jetbrains%e7%b3%bb%e5%88%97%e4%ba%a7%e5%93%81%e9%ab%98%e6%95%88%e9%a3%9f%e7%94%a8%e6%8c%87%e5%8c%97/">JetBrains系列产品高效食用指北</a>最先出现在<a rel="nofollow" href="https://www.crazyfay.com">枫阿雨&#039;s blog</a>。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.crazyfay.com/2023/04/20/jetbrains%e7%b3%bb%e5%88%97%e4%ba%a7%e5%93%81%e9%ab%98%e6%95%88%e9%a3%9f%e7%94%a8%e6%8c%87%e5%8c%97/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
