Win 下配置 PowerShell 命令高亮 & Virtualenv

PowerShell命令高亮

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

PSReadLine项目地址

PSGet项目地址

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

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

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

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

1
Set-ExecutionPolicy RemoteSigned

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

1
Install-module PSReadline

来看看效果吧:)

安装Virtualenv

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

安装Python

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

安装pip

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

1
python get-pip.py

安装 virtualenv 和 virtualenvwrapper-powershell

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

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

运行以下命令完成安装:

1
2
3
4
5
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 能够使用的命令了:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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