yoshubom 2020-03-06
目录
动词与名字结合
Get-command -verb Get 查看所有命令为“Get的命令”
Get-command -verb set 查看所有命令为“Set的命令”
Get-command -? 查看所有命令的帮助”
Get-command -CommandType Alias 获取命令的别名
Get-command -commandtype Function 获取函数功能
Get-command -commandtype script 获取脚本
Get-Process 列出系统所有进程
Stop-Process 进程PID结束进程
Get-service 列出所有服务
Stop-service [服务名] 停止服务
Powershell使用标准参数,前边必须带有-
例如:
Get -command -name Clear-host
其中参数是 command name name后面跟着真实的名字
帮助参数是 “?”
例如:
get -command -?
帮助参数任何命令都可以使用,表示显示此命令的帮助,该命令不会执行
这里的命令简称为(cmdlet)
powershell有几个常用参数,这些参数由powershell 引擎控制。
通用参数的行为始终是相同的。
参数列表如下
WhatIf, Confirm,Verbose,Debug,Warn,ErrorAction,ErrorVariable,OutVariable和OutBuffer
powershell支持别名,可以通过别名来引用此命令。
例如:
clear-host 是powershell内部函数,表示清空命令窗口
它的别名有 cls clear等,powershell会自动识别,并且运行 Clear-host
powershell跟CMD不是一个东西,但是你学习过cmd再去学习powershell
基本上的命令你都可以使用 例如cls 在cmd中可以清屏 powershell中可以做Clear-host函数的别名
常见cmd命令如下
命令 | 命令 | 命令 | 命令 |
---|---|---|---|
cat | dir | mount | rm |
cd | echo | move | rmdir |
chdir | erase | popd | sleep |
clear | h | ps | sort |
cls | history | pushd | tee |
copy | kill | pwd | type |
del | lp | r | write |
diff | ls | ren |
通过一条命令可以看这些别名在powershell中的真实名称
Get-Alias 别名
例子:
Get-Alias cls
输出
CommandType Name Version Source ----------- ---- ------- ------ Alias cls -> Clear-Host
它可以告诉你别名 cls真实的名字是 clear-host
因为powershell别名很多。所以我们要简单了解其对应关系
这样的话我们再看到别名就明白是什么意思了
比如si 别名为si你看了不懂。
但是有下面的别名表也能理解了
动词 | 别名缩写 |
---|---|
Get | g |
Set | s |
item | i |
location | l “不是一” |
command | cm |
Alias | al |
那么 si 就是 set-item
再举个例子
cmd中kill 可以查看其别名,那么我们可以写成缩写
gal kill
看看kill所代表的power内置函数是什么
输出
>>> gal kill CommandType Name Version Source ----------- ---- ------- ------ Alias kill -> Stop-Process
sal (Set-Alias)可以创建别名
如下:
Set-Alias -name 别名 -Value 真实的命令
如:
Set-Alias -Name gi -Value Get-Item
但是上面的命令会出错,因为内置的命令你不能修改。
比如说gi已经是内置的
那么换一个
如下:
sal -Name aabbcc -Value Get-Process 亦或者写作 Set-Alias -Name aabbcc -Value Get-Process
意思代表的是 将Get-Process设置别名,别名为aabbcc,此时运行
aabbcc则等价于 执行 Get-Process
help 命令名 Get-help 命令名
gcm Get-Help -syntax
主要就是 syntax参数,此参数返回命令的语法
PowerShell中可以创建变量来保存一些值
$[变量标识符] 例: $Value
变量可以保存powershell命令信息。例如
$Value = echo "Hello"
此时 Hello 会放在变量中而不会输出。
可以使用命令查看操作变量的详细信息
Get-Command -Noun Variable | Format-Table -Property Name,Definition -AutoSize -Wrap
Remove-Variable -Name * -Force -ErrorAction SilentlyContinue
Get-Variable
Get-ChildItem env:
此时的env 可以看作一个变量,可以获取下面的子目录或者路径
如:
>>> $env:tmp C:\windows\Temp
我系统下的 temp目录是在windows下则输出的是windows下的 temp
利用env变量还可以设置环境变量
如下:
$env:MyPath='path' 如: $env:QQPATH='D:\XXX\XXX\bin'