Win下配置PowerShell命令高亮 & Virtualenv

PowerShell命令高亮

PowerShell的外观一直以来都是蓝底白字,而新Windows PowerShell集成脚本环境(ISE)中已支持关键字高亮,为何不让PowerShell默认的控制台也支持上关键字高亮呢?

PSReadLine项目地址 PSGet项目地址

PSGet可以在线搜索和安装PowerShell第三方组件的工具,通过PSGet来安装PSReadLine过程十分简单。

首先打开PowerShell运行以下命令安装PSGet:

(new-object Net.WebClient).DownloadString("http://psget.net/GetPsGet.ps1") | iex

如果安装过程出现执行策略错误,以管理员权限打开PowerShell,使用命令设置策略即可:

Set-ExecutionPolicy RemoteSigned

之后只需要一行命令即可安装PSReadLine了:

Install-module PSReadline

来看看效果吧:)

PSReadLine

安装Virtualenv

在使用Python开发多个项目的时候,常常需要安装不同的依赖,如果全局安装的话这样会显得很混乱。而使用Virtualenv工具虚拟出多个Python环境,各个项目互相独立,便可轻松解决这个问题。

安装Python

首先安装Python。并且配置好环境变量:计算机→系统属性→高级→环境变量,新建一项,变量名Python,变量值为Python安装路径,如C:\Python27。并在PATH变量值后边添加;%Python%;%Python%/Scripts。再次打开控制台,输入python回车,能进入python交互界面就ok了。

安装pip

下载get-pip.py,控制台进入其所在路径,执行以下命令即可完成安装

python get-pip.py

安装virtualenv和virtualenvwrapper-powershell

首先要确保PowerShell执行策略允许执行Import-Module命令,参考上面的设置策略命令。

为了方便使用,可以设置一个工作目录。在环境变量中新建一个WORKON_HOME变量,值设置为你想设置的目录,如C:\virtualenvs

运行以下命令完成安装:

pip install virtualenv
pip install virtualenvwrapper-powershell
mkdir $env:WORKON_HOME  //新建 WORKON_HOME 变量指向的文件夹
cd $env:WORKON_HOME
import-module virtualenvwrapper

之后在PowerShell中输入命令 Get-Command *virtualenv* 就能够看到virtualenv能够使用的命令了:

PS C:\> Get-Command \*virtualenv\*

CommandType     Name                                               ModuleName
-----------     ----                                               ----------
Alias           cdvirtualenv ->                                    VirtualEnvWrapper
Alias           cpvirtualenv ->                                    VirtualEnvWrapper
Alias           lsvirtualenv ->                                    VirtualEnvWrapper
Alias           mkvirtualenv ->                                    VirtualEnvWrapper
Alias           rmvirtualenv ->                                    VirtualEnvWrapper
Function        add2virtualenv                                     VirtualEnvWrapper
Function        CDIntoVirtualEnvironment                           VirtualEnvWrapper
Function        Copy-VirtualEnvironment                            VirtualEnvWrapper
Function        GetVirtualEnvData                                  VirtualEnvWrapper
Function        Get-VirtualEnvironment                             VirtualEnvWrapper
Function        LooksLikeAVirtualEnv                               VirtualEnvWrapper
Function        NewVirtualEnvData                                  VirtualEnvWrapper
Function        New-VirtualEnvironment                             VirtualEnvWrapper
Function        Remove-VirtualEnvironment                          VirtualEnvWrapper
Function        Set-VirtualEnvironment                             VirtualEnvWrapper
Function        showvirtualenv                                     VirtualEnvWrapper
Application     virtualenv.exe
Application     virtualenv-3.4.exe