PowerShell-1.入门及其常用
PowerShell可以理解成是加强版的批处理,但是和批处理完全不同,比如可以调用API等。应用场景平时使用的用户机基本都支持了(出了XP)。
常用情节:便捷快速开发,或者是**(因为不存在自己的PE,so...)
比如我是WIn764。
运行起来大体是这个样子。
*********************************************************************
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命令的基本用法(get-help * | out-file C:\xxx.dat 获取所有帮助并且重定向输出)
6.Get-Member 获取对象属性 如: $var | Get-Memeber 访问$var属性 直接$var.ToString()
7.Stop-Process XX 关闭某个进程
...
********************************************************************
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"
*********************************************************************
排序用法
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"
}
}
if (条件) {代码}
elseif (条件) {代码}
else (条件) {代码}
else {代码} .
? -eq 判断是否等于(equal)
? -lt 判断时候小于(less than)
? -gt 判断是否大于(greater than)
? -ge 判断是否大于或等于(greater of equal)
? -le 判断是否小于或等于(less or equal)
? -ne 判断是否不等于(no equal)
? -and 与
? -or 或
? -not 非
? ! 非
*********************************************************************
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++)
{
Sleep(1)
Write-Host "loop number $i"
}
相关文章
- 单片机入门有多简单?带你了解GPIO内部电路及几种常用模式
- springBoot 入门(二)—— 使用 spring.profiles.active来区分配置
- ElasticSearch入门 第二篇:集群配置
- duilib入门问题集
- 《iOS 8应用开发入门经典(第6版)》——第1章,第1.6节小结
- 《PHP、MySQL和Apache入门经典(第5版)》一1.3 在Windows上安装XAMPP
- 《jQuery Mobile入门经典》—— 2.1 使用HTML创建内容
- 从零入门激光SLAM(八)——ROS常用消息
- SpringBoot入门十二(整合之项目打包部署运行)
- 【数字IC验证快速入门】4、熟悉数字IC验证中常用的Linux基本操作
- Tensorflow高速入门2--实现手写数字识别
- C++ 基础入门 之 结构体/结构体定义和使用/结构体数组/结构体指针/ 结构体嵌套结构体/结构体做函数参数/结构体中 const 使用场景/结构体案例
- 《C#零基础入门之百识百例》(三十八)常用方法 -- Math类
- 《C#零基础入门之百识百例》(六十七)枚举常用方法 -- 使用示例
- VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)
- VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)
- GRPC的配置,基于Golang的快速入门
- Java小白入门200例69之构造方法详解
- Markdown使用教程|入门指南
- msp430入门学习11