目录

前言

PowerShell在Windows10中的地位被慢慢提高,在最近的系统版本中,Powershell已经在资源管理器中完全代替以前的cmd出现,由于平常经常使用类unix系统命令,所以也逐渐把运行命令的习惯向PowerShell迁移。

查看别名

PS C:\> Get-Alias

创建永久别名

在PowerShell中直接使用Set-Alias或New-Alias命令创建的别名在关闭此Session后即会失效,防止此现象的方法是将此命令写入Windows PowerShell profile文件。 查看此文件在计算机中的位置:

PS C:\> $profile
C:\Users\jm\Documents\WindowsPowerShell

一般该文件在没有创建前是不存在的,使用以下命令为当前用户创建profile命令并返回文件地址:

PS C:\> New-Item -Type file -Force $profile
C:\Users\jm\Documents\WindowsPowerShell

打开文件写入别名函数代码:

function hugoMdFormat{
    C:/Users/jm/AppData/Local/Programs/Python/Python37/python.exe i:/src/hugo/9ong/myscript/python/hugo-md-format.py
}
function qiniuImgReplace{
    C:/Users/jm/AppData/Local/Programs/Python/Python37/python.exe i:/src/hugo/9ong/myscript/python/qiniu-img-class.py
}

Set-Alias hugo-md-format hugoMdFormat
Set-Alias qiniu-img-replace qiniuImgReplace

加载$profile文件问题

重新打开powershell,才会重新加载$profile文件,第一次打开时会提示“无法加载文件C:\XXX\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本”

解决这个问题:

  • 以管理员身份运行powershell

    win10系统中进去PowerShell的路径,依次点击“C:\WINDOWS\System32\WindowsPowerShell”,右键点击以管理员身份运行

  • 输入:set-executionpolicy remotesigned ,选择输入Y,确认即可

    Restricted 执行策略不允许任何脚本运行。

    AllSigned 和 RemoteSigned 执行策略可防止 Windows PowerShell 运行没有数字签名的脚本。

    本主题说明如何运行所选未签名脚本(即使在执行策略为 RemoteSigned 的情况下),还说明如何对 脚本进行签名以便您自己使用。

    有关 Windows PowerShell 执行策略的详细信息,请参阅 about_Execution_Policy。

测试效果

重新打开powershell,重新加载$profile文件

PS I:\> hugo-md-format
···HugoMarkdown···

输入文章绝对路径,比如I:\src\hugo\9ong\content\post\其他\xxx.md:.

cmd别名

如果你常用的是cmd的话,也可以通过doskey为cmd添加别名

  • 首先需要两个文件:

    • doskey别名定义批处理文件:H:\cmd\alias.bat

      @doskey ls=dir
      @doskey hugo-md-format=C:/Users/jm/AppData/Local/Programs/Python/Python37/python.exe i:/src/hugo/9ong/myscript/python/hugo-md-format.py
      @doskey qiniu-img-replace=C:/Users/jm/AppData/Local/Programs/Python/Python37/python.exe i:/src/hugo/9ong/myscript/python/qiniu-img-class.py
      
    • 注册表修改文件:H:\cmd\alias.reg

      Windows Registry Editor Version 5.00
      
      [HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
      "AutoRun"="H:\\cmd\\alias.bat"
      

      注意:AutoRun的字符串值中,路径要求双斜杠\,否则会没有效果

  • 双击执行alias.reg,注册别名启动文件

  • win+R,输入cmd,启动cmd,输入命令别名:hugo-md-format

更详细详见:

@tsingchan