Power Shell折腾记

Aengus Sun 881 2019-02-21

Power Shell是什么

Power Shell(包括Windows Power Shell and Power Shell Core)是微软公司开发的任务自动化和配置管理框架,由.NET Framework和.NET Core是构建的命令行界面壳层相关脚本语言组成,最初仅Windows组件,后于2016年8月18日开源支持。

随着Power Shell的开源和多平台化,微软正利用这个工程尝试和Linux Bash进行某种层面上的竞争。虽然Power Shell出现的时间已经很长,但是最近它才开始出现取代Windows下cmd的趋势。其功能之强大是无可否认的,所以越来越多的技术人员开始使用Power Shell。

Power Shell美化

Power Shell默认的界面十分一言难尽,深蓝色的背景加上红色的错误提示,再加上字体的原因,有些信息完全看不清楚,不过如果稍加修改,也可以让界面变好看很多,只要在标题栏右键选择属性即可修改,不过可以改变的有限,我们可以通过Power Shell自带的模块来下载主题模块来美化。

这里用到的是在Linux bash上比较有名的oh-my-bash,下面是具体过程:

  1. 以管理员权限打开Power Shell;
  2. 首先运行Set-ExecutionPolicy Bypass,这个命令可以允许加载并运行任意脚本,会有安全警告不过不用担心,如果已经设置过类似的命令可以跳过;
  3. 然后安装posh-git和oh-my-posh,运行命令Install-Module posh-gitInstall-Module oh-my-posh,如果失败的话就先运行Install-Module -Name PSReadLine,在安装时可能会有安全警告,如果嫌烦的话可以运行Set-PSRepository -Name PSGallery -InstallationPolicy Trusted就可以了;
  4. 接下来我们就可以用Set-Theme命令来修改主题了,可供修改的主题有Agnoster、Paradox、Sorin、Darkblood、Avit、Honukai,Fish(样式在上面“oh-my-posh的链接中有”),直接用Set-Theme 主题名即可;
  5. 接下来设置配置文件,输入命令Test-path $profile,如果提示没有此文件的话用New-item –type file –force $profile命令创建后再Notepad $profile打开,在文件中输入“Set-Theme 主题名”后保存关闭,这样就不用每次打开Power Shell都要设置了

到此基本设置完成

关于主题的使用

以下是关于主题的命令及说明:

$ThemeSettings	             //列出当前主题的配置信息
$Show-Colors                 //显示当前所有的颜色
$Show-ThemeColors            //显示当前主题颜色
$Set-Theme paradix/fish/...  //设置主题

一般来说,主题文件一般在C:/Program Files/WindowsPowerShell/Modules/oh-my-posh/2.0.245/目录下,可以通过$ThemeSettings命令查看”CurrentThemeLocation“得知,所以我们可以通过修改其中的文件来完成自定义。默认的一些配置在“defaults.ps1”文件中,如颜色或者符号;可以搭配“oh-my-posh.psd1”和“oh-my-posh.psm1”文件来了解oh-my-posh的命令和配置;当前使用的主题文件的配置在Themes文件夹下。

Power Shell其他问题

卸载模块:Uninstall-Module -Name "模块名"

切换到名字中带有空格的路径:Power Shell不像cmd,命令参数之间的间隔严格按照空格划分,如果文件夹名中有空格,则要将路径两边添加分号

参考链接:

https://segmentfault.com/a/1190000008607196

https://coolcode.org/2018/03/16/how-to-make-your-powershell-beautiful