传统弱校HFUT的蒟蒻,真相只有一个

Powershell常用命令

Powershell常用命令
1.Get-Command 得到Powshell所有命令
2.Get-Process 获取所有进程
3.Set-Alias 给指定命令重命名 如:Set-Alias aaa Get-Command
4.Set-ExecutionPolicy remotesigned 设置powershell可直接执行脚本文件 一般脚本文件以.ps1结尾 执行脚本文件直接输入文件地址即可执行 脚本文件中只写命令即可
5.Get-Help get-* 查询以get开头的命令 Get-Help *service* Get-Help Get-Command 获取Get-Command命令的基本用法
6. Get-Member 获取对象属性 如: $var | Get-Memeber 访问$var属性 直接$var.ToString()


get-help *:列出所有的主题,包括指令和概念。
get-help * | more:列出所有的主题,包括指令和概念,而且显示满整个窗口就暂停。
get-help about*:列出所有的概念主题,例如万元字符、foreach 循环。
get-help get*:列出所有 get 开头的主题。 ?
get-help {<指令名称或主题名称>}:列出指定的指令或主题的说明,例如 get-help dir 可以查询 dir 指令的用法,而 get-help about_wildcard 可以查询「万用字符」这项主题的用法。
此外,也可以用 help 取代 get-help,最大的好处是 help 显示满整个窗口,预设就会自动暂停。

PS中的变量定义
不需要定义或声明数据类型
在变量前加"$"
定义变量的规则
-变量可以是数字 $123
-变量可以是字符串 $abc
-变量可以是特殊字符 ${@1b}
内置的变量
-$pshome
-$home
-$profile

变量赋值: $var=123 $var="aaaaaa"
取变量值: $var

变量赋值方法:Set-Variable var 100
取值方法: Get-Variable var
清空值: Clear-Variable var
删除变量 Remove-Variable var
取多个变量如var1 var2 var3地值: Get-Variable var*

另一种赋值方法 $var1="bbb" $var2="$var $var1" 结果$var2="aaaaaa bbb"
$var2='$var $var1' 结果$var2="$var $var1"
$date=Get-Date 获取当前时间
$date.AddDays(3) 当前时间加3天

 

排序用法
Get-Process | Sort-Object ws 根据WS值由小到大排序
Get-Process | Sort-Object | fl Get-Process | Sort-Object | Format-List 以列表形式显示数据

导入导出文件
Get-Process > c:/aa.txt
Get-Process | Export-Clixml c:/ddd.xml 将命令执行结果导出到xml文件中
Import-Clixml c:/ddd.xml 将xml文件导出到控件台


注释使用
Get-Proccess | #这里写注释信息
sort ws

比较运算符
$var="abc"
$var -like "&b&" 返回true
$var -clike "&b&" 返回true

 

函数使用
案例:在一个脚本文件中有如下代码:
$var1=10
function one{"The Variable is $var1"}
function two{$var1=20;one}
one
two
one
执行结果: The Variable is 10
The Variable is 20
The Variable is 10
此示例表明,在函数中改变变量值并不影响实际值
若需改变其值请看如下代码:
$var1=10
function one{"The Variable is $var1"}
function two{$Script:var1=20;one}
one
two
one
执行结果: The Variable is 10
The Variable is 20
The Variable is 20

 

freach使用
$var=1..6 #定义数组
foreach($i in $var)
{
$n++
Write-Host "$i"
}
Write-Host "there were $n record"


if使用
Get-Service | foreach{
if($_.status -eq "running"){
Write-Host $_.displayname "("$_status")" -foregroundcolor "green"
}
else
{
Write-Host $_.displayname "("$_status")" -foregroundcolor "red"
}
}

 

error使用
function one
{
Get-Process -ea stop
Get-ChildItem ada -ErrorAction stop #此句有误
Get-Process -ErrorAction stop
}
one

-ea 定义当错误发生以后该如何继续执行
$?可以测试命令执行成功还是失败,成功则结果为true 反之为false

 

单步调试
先设置Set-PSDebug -step
for($i=1;$i -le 10;$i++)
{
Write-Host "loop number $i"
}

posted @ 2015-09-05 21:23  未名亚柳  阅读(984)  评论(0编辑  收藏  举报