折腾了好多Windows系统下的终端,兜兜转转终于还是回到了Windows Terminal,把所有设置都记录一下备用。
本文基于Windows11 21H2 22000和Windows Terminal 1.15
使用Oh My Posh美化
详细步骤可以参考官方文档
安装Oh My Posh
通过Microsoft Store安装:ms-windows-store://pdp/?productid=XP8K0HKJFRXGCK
完成后,管理员模式运行Windows Terminal,输入以下代码:
1 | winget install JanDeDobbeleer.OhMyPosh -s winget |
安装Nerd Font:
关闭Windows Terminal,并重新用管理员模式运行。输入以下代码:
1 | oh-my-posh font install |
选择一个字体后回车安装,个人比较喜欢FiraCode
应用字体
打开Windows Terminal界面,找到配置文件>默认值>外观>字体,应用安装的字体(FiraCode对应的是FiraCode NFM)
Powershell的默认配置
继续在Windows Terminal中输入下面代码:
1 | New-Item -Path $PROFILE -Type File -Force |
会生成一个默认配置文件。然后输入:
1 | notepad $PROFILE |
会在记事本中打开配置文件。在记事本中输入:
1 | oh-my-posh init pwsh | Invoke-Expression |
保存文件并关闭。
重新打开Windows Terminal,就能看到美化已经生效了。
如果提示“无法加载文件 …Microsoft.PowerShell_profile.ps1,因为在此系统上禁止运行脚本”,先在管理员模式的Terminal下运行:
1 | set-ExecutionPolicy RemoteSigned |
更改主题
先浏览一下自带的一些主题,看中哪个后,记住它的名字,比如官方文档中默认使用的是jandedobbeleer
和上一步一样,通过
1 | notepad $PROFILE |
打开配置文件,将内容替换为:
1 | oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/jandedobbeleer.omp.json" | Invoke-Expression |
记得把主题名字改成自己喜欢的主题。
保存退出。重新打开Windows Terminal即可应用新的主题。
配置远程SSH连接
添加ssh配置
打开Windows Terminal设置,在左侧配置文件处,点击添加新配置文件,选择新建空配置文件
名称自定义,命令行更改为
1 | ssh root@服务器IP地址 -p 22 -o ServerAliveInterval=20 |
其他选项可以自行探索。
免密码登录
生成本机ssh公钥
首先查看本机是否有ssh公钥:
1 | cat ~/.ssh/id_rsa.pub |
如果提示该路径不存在,生成一个(如果已经存在,就不需要生成了):
1 | ssh-keygen |
会问几个问题,全部回车使用默认即可。
生成完成后,再次使用上面的cat命令,查看ssh公钥,并复制下来。
将本机ssh公钥添加到远程主机的authorized_keys里面
登录远程主机,首先查看是否存在.ssh文件夹
1 | ls ~/.ssh |
如果不存在,也先用ssh-keygen命令生成个公钥。
然后编辑authorized_keys文件:
1 | vi ~/.ssh/authorized_keys |
把复制下来的本机ssh公钥粘贴到最下面一行,保存退出即可。
美化远程主机终端
我们也给远程主机安装一下Oh My Posh
安装Oh My Posh
登录远程主机,运行如下命令安装:
1 | sudo wget https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/posh-linux-amd64 -O /usr/local/bin/oh-my-posh |
然后运行如下命令安装主题:
1 | mkdir ~/.poshthemes |
应用Oh My Posh
首先在远程主机运行如下命令确定shell的类型:
1 | oh-my-posh get shell |
参考官方文档,针对不同shell类型有不同的应用方式。比如比较常见的bash,通常是在~/.bashrc文件的最下面添加一行:
1 | eval "$(oh-my-posh init bash --config ~/.poshthemes/jandedobbeleer.omp.json)" |
保存后重启远程ssh或者运行
1 | exec bash |
即可。记得修改成自己喜欢的主题。