《Learn Windows PowerShell in a Month of Lunches Third Edition》读书笔记——CHAPTER 4 Running commands
4.2 The anatomy of a command

4.4 Aliases: nicknames for commands
对于那些过长的命令(如Set-WinDefaultInputMethodOverride),我们可以使用 命令 get-alias 来获取其别名信息。
    PS C:\> get-alias -Definition "Get-Service"
    Capability      Name
    ----------      ----
    Cmdlet          gsv -> Get-Service
        值得注意的是 :PowerShell里的别名并不允许跟随参数!
当使用 help + 别名 ,如 help gsv ,的时候。结果和不用别名是一样的。
Above and beyond
通过指令 New-Alias 创建专属于我们的标识符。
使用命令 Export-Alias 导出已建立的标识符。
借助命令 Import-Alias 导入已书写的标识符。
值得注意的是,在当前窗口关闭后将无法访问新建立的标识符。
建议避免自行创建标识符。
4.5 Taking shortcuts
除了使用别名,我们还有三种更简短的形式来写命令名字,分别如下:
4.5.1 Truncating parameter names (截短参数名字)
无需完全输入参数名称,在某些情况下只需根据前几个字母就能唯一识别出相应的参数名称。例如,在某些情况下可以用简化的形式如 -comp 代替完整的 -computerName 参数。然而,在这种情况下我们需要分别通过 -compu、-commo 和 -compo 这些不同的前缀来明确区分它们。
4.5.2 Using parameter name aliases
参数也有他们自己的别名,使用类似以下命令可以查看:
    PS C:\> (get-command `get-eventlog` | select -ExpandProperty parameters).`computername`.aliases
        高亮的词组是可以替换的
4.5.3 Using positional parameters
查阅一个参数的位置可以在其中的帮助文档中按照出现次序查阅。
或者通过 help 命令使用 -full 参数获取其 position 值。
4.6 Cheating a bit: Show-Command
如果偶尔忘记命令参数或不想手动输入相关内容时,请考虑借助cmdlet Show-Command这个工具来辅助操作:借助cmdlet Show-Command这个工具来辅助操作:

当我们在内部填入完成后相应的数值后
4.7 Support for external commands
此外,在PowerShell中不仅可以运行其内置命令以及其它批处理工具(Ping工具、Nslookup工具、Ipconfig工具及Net相关功能),还可以支持执行其他批处理功能。值得注意的是,在输入这些指令时,默认情况下会启动Cmd.exe程序。
PowerShell中的cmdlets有时会比传统的命令行界面更加强大和高效,在某些情况下表现更为出色;例如,在执行网络连接测试时使用Test-Connection不仅提供更多的命令选项还能提供更多功能与灵活性。
对于外来的命令,我们得使用如下方式来让PowerShell明白:
    $exe = "C:\Vmware\vcbMounter.exe"
    $host = "server"
    $user = "joe"
    $password = "password"
    $machine = "somepc"
    $location = "somelocation"
    $backupType = "incremental"
    `&` $exe -h $host -u $user -p $password -s "name:$machine" -r $location -t
    $backupType
        这个 vcbMounter.exe 是一个外来的命令,其参数如下:
    -h for the host name
    -u for the user name
    -p for the password
    -s for the server name
    -r for a location
    -t for a backup type
        对于v3以上的版本,我们只需要在外来的命令前面加上 --% 即可。
错误的:
    PS C:\> $n = "bits"
    PS C:\> C:\windows\system32\sc.exe --% qc $n
    [SC] OpenService FAILED 1060:
    The specified service does not exist as an installed service.
        正确的:
    PS C:\> C:\windows\system32\sc.exe --% qc bits
    [SC] QueryServiceConfig SUCCESS
        4.9.2 Typing parameters
PowerShell isn’t normally picky about upper- and lowercase.
