window中默认使用bash
Posted 陋室
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了window中默认使用bash相关的知识,希望对你有一定的参考价值。
目的:
为了在windows中也有Linux的命令行操作体验,并且发现win11的命令行工具界面有许多可以自定义的设置,所以捣鼓一下
准备
- win11系统,主要是有可以自定义终端启动配置的功能,未尝试其它系统是否可行;
- 安装了git,因为这种实现,就是快捷调用git提供的bash.exe而已,位于"安装目录下/bin/bash.exe",与git-bash.exe区分;
实现
- 在“桌面”或者任意空白处右键选择“在终端中打开”;
- 标签下拉选择“设置”;
- 左侧下方选择“添加新配置文件”;
- “添加空配置文件”;
- 详细配置;
- 名称可以自定义,比如:“git_bash”;
- 命令行就是填git安装文件夹下的bash.exe路径,注意:不是git-bash.exe 的路径,二者不同,如果配置为后者,打开窗口会新启动git的窗口,示例配置:“D:\\Program Files\\Git\\bin\\bash.exe”
- 启动目录建议取消勾选“使用父进程目录”,这样在文件夹内选“在终端中打开”,路径就直接是当前文件夹路径了,而不是特定目录;
- 其他选择按需配置;
- 保存配置;
- 这样就关联了bash.exe的启动,但是启动终端并不是默认bash而是cmd或者powershell,那么需要把默认启动的改为刚才我们添加的配置;
- “保存”并退出,之后我们只要是“在终端中打开”,就默认启动bash,可以使用bash命令;
字符乱码问题
这样默认设置好了bash,但是在终端中输出中文时,会出现乱码问题。
解决方法如下:
如果在使用
bash.exe
时出现中文乱码问题,可以尝试以下几种解决方法:
设置字符编码:
- 打开命令提示符或PowerShell。
- 运行以下命令,设置
chcp
命令的输出字符编码为UTF-8:chcp 65001
- 然后再次运行
bash.exe
并执行dir
命令,查看是否能够正确显示中文字符。修改
bash.exe
的默认字符编码:
- 定位到
bash.exe
所在的目录。- 备份并打开
etc
文件夹中的bash.bashrc
文件(例如,C:\\Program Files\\Git\\etc\\bash.bashrc
)。- 在文件末尾添加以下行:
export LANG="zh_CN.UTF-8" export LC_ALL="zh_CN.UTF-8"
- 保存文件并重新打开
bash.exe
,执行dir
命令,看是否能够正确显示中文字符。使用支持Unicode的终端模拟器:
- 如果你使用的终端模拟器(如Windows Terminal、ConEmu 等)支持Unicode字符集,尝试在终端模拟器中直接运行
bash.exe
,而不是在命令提示符或PowerShell中执行。- 这些终端模拟器通常会正确处理中文字符的显示。
请注意,以上方法可能因操作系统版本、终端设置或其他因素而有所不同。如果以上方法无法解决问题,建议尝试使用其他终端模拟器或考虑使用适用于Windows的其他Bash解释器,如WSL (Windows Subsystem for Linux)。
我依次使用了第一、第二种方法,第二种方法试完后,问题解决。
Windows的idea的Terminal替换为git bash(默认是Windows的cmd.exe命令行)
背景
Windows版的Intellij IDEA 默认的Terminal是Windows的cmd.exe命令行,如图
效果如下图
在这里输入git命令也不是不可以,只是有些小细节比较不方便而已。其实是可以改成git bash的那个bash.exe的
使用idea默认的cmd.exe有啥不太好的细节?
- 不显示当前git的分支,命令着色上差一些
- 有些命令和git bash不太相同
- 如win的命令行使用 cls 清屏而bash使用和Linux一样的clear
- 如win中没有grep命令
如何修改
在 File -> Settings -> Tools -> Terminal 里将Shell path修改为bash.exe(浏览到Windows git的安装目录的bin下并选择),如图
(备注:全局生效、不需要重启idea生效)
如下图,换后可以直观地看到当前所在的分支名等,高亮着色显眼。
以上是关于window中默认使用bash的主要内容,如果未能解决你的问题,请参考以下文章
Windows的idea的Terminal替换为git bash(默认是Windows的cmd.exe命令行)