跳到主要内容

Windows PowerShell使用指南

· 阅读需 3 分钟
star

PowerShellMicroSoft 开发的一款跨平台的任务自动化解决方案,由命令行 Shell、脚本语言和配置框架构成。PowerShell 支持 KornShell 的核心语法,习惯 bash 的朋友非常容易切换到 PowerShell,所以 PowerShellWindows 上非常受欢迎的命令行工具。

1. 配置profile

PowerShell 支持个性化配置,同时定义了很多变量来方便用户对 profile 进行配置。

变量说明
$PROFILE当前用户,当前主机
$PROFILE.CurrentUserCurrentHost当前用户,当前主机
$PROFILE.CurrentUserAllHosts当前用户,所有主机
$PROFILE.AllUsersCurrentHost所有用户,当前主机
$PROFILE.AllUsersAllHosts所有用户,所有主机

 查看变量对应值

$PROFILE | Get-Member -Type NoteProperty

 测试文件是否存在

Test-Path -Path $PROFILE.AllUsersAllHosts

 新建文件,注意需要管理员权限

New-Item -ItemType File -Path $PROFILE.AllUsersAllHost -Force

 修改文件

notepad $PROFILE.AllUsersAllHosts

 在 profile 里新增代理配置如下,这样启动 PowerShell 时默认会将 http://127.0.0.1/10809 作为 Https 的代理。

添加代理
$ENV:HTTPS_PROXY='http://127.0.0.1:10809'

2. scp免密拷贝

 发布站点到服务器时,需要将本地打包好的内容拷贝到远程服务器上。PowerShell 支持 scp 命令,可以参考github使用一文,将本地的 pub key 加到远程服务器的信任 key 中,这样拷贝时不用输入密码。

cat ~/.ssh/id_rsa.pub | ssh [email protected] 'cat >> ~/.ssh/authorized_keys'

 在 profile 里面定义下面两个变量:

$SSH_PUB_KEY='添加到远程服务器信任的key'
$REMOTE_SERVER='远程服务器的地址'

docusaraus编译生成的站点可以通过下面命令完成部署。

scp -i $SSH_PUB_KEY -r build/ $REMOTE_SERVER

3. 修改启动PowerShell时的默认路径

 可以通过以下方式修改 PowerShell 的启动路径。

  • 进入目录: C:\Users\yourusername\Documents\WindowsPowerShell,其中 yourusernam 替换成你的系统用户

  • 创建一个配置文件,例如:Microsoft.PowerShell_profile.ps1

  • 在文件中添加以下内容,location 后面填写你希望的目录

Set-location D:\xxx

署名-非商业性使用-禁止演绎 4.0 国际