【黑客基础】Windows PowerShell 脚本学习(上)
视频地址:【黑客基础】Windows PowerShell 脚本学习
2019.12.05 学习笔记
1、$PSVersionTable :查看PowerShell的版本信息。
2、PowerShell 界面:
- 开始界面搜索 “PowerShell” ,点击 “PowerShell.exe” 或者 “PowerShell ISE”。
- cmd 命令界面输入 “PowerShell”。
3、PowerShell 快捷键
- Alt + F7 :清除命令等历史记录,相当于 cls 命令。
- Ctrl + PgUp :上翻页。
- Ctrl + PgDn :下翻页。
- 上下箭头键 :切换命令行等历史记录。
- 左/右箭头键 :左右移动光标。
- Ctrl + Home :
- Ctrl + End :
- ESC:清空当前命令行。
- Tab :自动补齐并选择补齐命令或文件名。
- Enter :执行当前的命令。
- Ctrl + C :取消正在执行等命令。
- Backspace :从右删除命令行字符。
- F2 :自动补充历史命令到指定字符。
- F4 :删除命令行至光标右边指定等字符处。
- F7 :对话框显示命令行历史记录。
- F8 :检索包含指定字符的命令行历史记录。
- F9 :根据命令行等历史记录编号选择命令,历史记录编号可以通过 F7 查看。
4、PowerShell 的管道
- PowerShell 的管道是基于对象的,和Linux Shell 基于文本不同。
- 管道:前一个命令的输出作为下一个命令的输入。
- 重定向:
- “>” 表示输出到某文件,覆盖文件原有的内容,如果文件不存在则自动创建。
- “>>” 表示添加到某文件内容的结尾。
5、PowerShell 的运算符
- 支持四则运算
- 支持数值的进制转换
- 支持逻辑运算
6、PowerShell 使用外部命令
PowerShell 是 cmd 的扩展,cmd 的命令在 PowerShell 中基本都可以使用执行。
netstat -ano :查看端口信息,同 cmd 命令。
ipconfig :查看网络配置信息,同 cmd 命令。
route print :打印路由信息,同 cmd 命令。
start :打开应用程序。
notepad :打开文本编辑器,同 cmd 命令。
calc :打开计算器,同 cmd 命令。
&"command" :打开PowerShell 外部命令,PowerShell 专用。
$env:path :输出 path 环境变量的内容。
$env:path = $env:path + "dir_path" :临时添加 path 环境变量。
7、PowerShell 的命令集
- Get-Command :获取 PowerShell 所有的命令。
- PowerShell 的命令类型有 Alias 、Function 、Cmdlet 三种。
- Alias :别名。
- Function :函数。
- Cmdlet :PowerShell 内部命令,以动-名词的格式命名。
- Get-Help :获取命令的帮助信息。
- Get-process :获取系统的进程信息。
- Get-Alias :获取别名对应的命令信息。
- Get-History :获取命令行使用命令的历史信息。
- Get-Date:获取当前的日期时间信息。
8、PowerShell 的别名
- Get-Help :获取命令的帮助信息,包含命令的别名信息。
- Get-Alias :获取别名对应的命令信息。
- Get-Alias -name "ls" :获取别名是“ls”的PowerShell命令。
- Get-Alias | where {$_.definition.startswith("Remove")} :获取以“Remove”开头命令的别名信息。
- Get-Alias | Group-Object definition | sort -descending Count :根据命令别名的个数倒序显示命令及其别名。
9、自定义别名
- Set-Alias :定义命令的别名。
- Set-Alias -name txt -value notepad
- -name :指定命令的别名。
- -value :指定需要定义别名的命令。
- del alias:txt :删除别名“txt”。
- Export-Alias :导出别名,
Export-Alias demo.ps1。 - Import-Alias :导入别名,
Import-Alias demo.ps1,不成功可以使用“-force”参数进行强制导入。
10、PowerShell 变量
- PowerShell 使用 $ 符号来定义变量,不需要指定变量类型。
- $var_name
- $var_name = value
- PowerShell 对大小写不敏感。
- 定义变量使用特别的变量名需要使用花括号将变量名括起来。
- 变量的赋值可以是别名、命令、表达式等。
- 多个变量可以同时赋值。
11、变量操作
两个变量的值互换:
$tempt = $var1
$var_1 = $var_2
$var_2 = $tempt
$var_1,$var_2 = $var_2,$var_1
ls variable:: 查看当前使用的变量。ls variable:var_name: 查看变量 $var_name 的信息,支持正则表达式。Test-Path variable:var_name:查看变量 $var_name 是否存在,返回布尔值。del variable:var_name:删除指定的变量。Clear-Variable :清除指定的变量。
Remove-Variable:删除指定的变量。
12、PowerShell 自动化变量
- 自动化变量是由 PowerShell 自己创建和维护的,一些变量是只读而不能写入的。
- $home :用户根目录路径。
- $pid :当前界面进程的ID。
- $$ :上一个运行的命令。
- $? :上一个命令运行的状态,返回布尔值。
- $_ :当前变量。
- $null :空值,空变量。
13、PowerShell 环境变量
ls env::查看环境变量信息。env:var_name:显示指定的环境变量信息,支持正则表达式。env:varname=value:创建添加一个环境变量。del env:var_name:删除指定的环境变量,支持正则表达式。[environment]::setenvironmentvariable("PATH","D:\","User"):设置用户的 $PATH 变量,永久生效。[environment]::getenvironmentvariable("PATH","User"):获取环境变量 $PATH 。
14、PowerShell 脚本执行策略
- PowerShell 脚本以
.ps1后缀。 - Get-Executionpolicy :查看命令行的脚本执行权限,返回 Restricted 表示禁止。
Set-Executionpolicy RemoteSigned:允许命令行运行 PowerShell 脚本。
15、PowerShell 脚本调用
- 切换到桌面:cd desktop
- & “PowerShell_script_path” :执行脚本。
- .bat 脚本文件调用PowerShell 脚本:
powershell "& 'PowerShell_script_path'"
【黑客基础】Windows PowerShell 脚本学习(上)的更多相关文章
- 使用Windows任务计划程序运行Windows PowerShell脚本
创建计划任务以运行PowerShell脚本 我需要创建一个计划任务来运行Windows PowerShell脚本的第一件事是我将执行的命令行.找到这个的简单方法是使用Run 命令.有时,我需要知道什么 ...
- Windows bat脚本学习(1)
基础 首先所有命令在cmd命令行中都能找到说明: 例如 想知道type用法 输入type /? 其他命令都一样 type [drive:][path] filename 显示文本文件内容 虽然有点鸡肋 ...
- Windows Powershell脚本执行
在cmd下执行powershell进入shell模式: 变量定义:$i = 10 $a = ifconfig | findstr "192" Windows下的命令都可以执行如: ...
- 【SharePoint学习笔记】第2章 SharePoint Windows PowerShell 指南
快速了解Windows PowerShell 从SharePoint 2010开始支持PowerShell,仍支持stsadm.exe工具: 可以调用.NET对象.COM对象.exe文 ...
- SharePoint 2010 最佳实践学习总结------第2章 SharePoint Windows PowerShell指南
第2章 SharePoint Windows PowerShell指南 SharePoint 2010是SharePoint系列产品中第一个开始支持Windows PowerShell的产品,在以前的 ...
- Windows PowerShell基本语法及常用命令
PowerShell常用命令: 一 Get类 1.Get-Command : 得到所有PowerShell命令,获取有关 cmdlet 以及有关 Windows PowerShell 命令的其他元素的 ...
- windows powershell学习
PowerShell,从名字可以知道,他首先是一个shell,shell的意思就是和Linux的bash等一样.和原来的cmd一样就是在里边敲命令(可执行文件)使用: 而Power就意味他是一个功能强 ...
- Bat 脚本学习 (基础篇)
[转]Bat 脚本学习 2015-01-05 14:13 115人阅读 评论(0) 收藏 举报 基础部分: ============================================== ...
- windows powershell基础
windows powershell基础 目录: 1.管道和重定向 2.命令执行 3.变量 4.数组和哈希表 #@()创建数组,使用","把每个值分隔开,@{}创建哈希表,用&qu ...
随机推荐
- Java基础01-集合1、泛型
集合.泛型 第一章:集合1 1. 什么是集合 定义:在Java中,集合是一种可以存储多个数据的容器. 代码: ArrayList<String> list = new ArrayList& ...
- Nexus 上传项目到私服
1. maven setting配置 <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed ...
- vue 合成图片
目的:将二维码图片和背景图片合成变成一张图片 方法一: 引入依赖 cnpm install qrcanvas --save cnpm install html2canvas --save 具体代码: ...
- 大事祭——MiserWeyte
2019.9.10 QHDYZ组建信奥集训队祭(我哪知道这个鶸学校为啥这个时候组队) 2019.9.11 成为集训队毒瘤出题人祭 2019.9.21 博客界面优化祭(终于不是白底蓝框了)“那个拿剑的就 ...
- 1005 csp-s 60 凉凉
T1 嘟嘟噜 上来一看数据范围1e9就蒙蔽,然后不知所措的打了一个 $ O(n)$的无脑算法,由于本人真的脑小,导致O(n)的柿子推了好长时间,导致心态崩了,然后........ 今天能明白了log的 ...
- zookeeper集群模式安装
服务器节点规划: 节点1:192.168.0.103 节点2:192.168.0.104 节点3:192.168.0.105 安装zookeeper,将zookeeper上传到三个服务器,保存在/ho ...
- java中线程同步的几种方法
1.使用synchronized关键字 由于java的每个对象都有一个内置锁,当用此关键字修饰方法时, 内置锁会保护整个方法.在调用该方法前,需要获得内置锁,否则就处于阻塞状态. 注: synchro ...
- java架构之路(MQ专题)kafka集群配置和简单使用
前面我们说了RabbitMQ和RocketMQ的安装和简单的使用,这次我们说一下Kafka的安装配置,后面我会用几个真实案例来说一下MQ的真实使用场景.天冷了,不愿意伸手,最近没怎么写博客了,还请见谅 ...
- PHP 中四大经典排序算法
1.冒泡排序 在要排序的一组数中,对当前还未排好的序列,从前往后对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒.即,每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换. ...
- PHP laravel+thrift+swoole打造微服务框架
Laravel作为最受欢迎的php web框架一直广受广大互联网公司的喜爱. 笔者也参与过一些由laravel开发的项目.虽然laravel的性能广受诟病但是业界也有一些比较好的解决方案,比如堆机器, ...