powershell 基础

目录

本教程概述

用到的工具

标签

简介

0x01使用简介

0x02脚本编写

0x03实例讲解

本教程概述

本课我们学习powershell使用。

用到的工具

cmd.exe   powershell

标签

powershell基础

简介

Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework 的强大功能。

它引入了许多非常有用的新概念,从而进一步扩展了您在 Windows 命令提示符和 Windows Script Host 环境中获得的知识和创建的脚本。

Windows PowerShell v3将伴随着MicrosoftHyper-V3.0和Windows Server 2012发布。PowerShell v3是一个Windows任务自动化的框架,它由一个命令行shell和内置在这个.NET框架上的编程语言组成。

PowerShell v3采用新的cmdlet让管理员能够更深入到系统进程中,这些进程可以制作成可执行的文件或脚本(script)。一条cmdlet是一条轻量命令,Windows PowerShell运行时间在自动化脚本的环境里调用它。Cmdlet包括显示当前目录的Get-Location,访问文件内容的Get-Content和结束运行进程的Stop-Process。

PowerShell v3在Windows Server 8中装载了Windows Management Framework 3.0。PowerShell运行时间也能嵌入到其它应用。

0x01 使用简介

Powershell是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境。你可以把它看成是命令行提示符cmd.exe的扩充,不对,应当是颠覆。powershell需要.NET环境的支持,同时支持.NET对象。微软之所以将Powershell 定位为Power,并不是夸大其词,因为它完全支持对象。其可读性,易用性,可以位居当前所有shell之首。 当前powershell有四版本,分别为1.0,2.0,3.0 ,4.0。

如果您的系统是window7或者Windows Server 2008,那么PowerShell 2.0已经内置了,可以升级为3.0,4.0。

如果您的系统是Windows 8 或者Windows server 2012,那么PowerShell 3.0已经内置了,可以升级为4.0。

如果您的系统为Windows 8.1或者Windows server 2012 R2,那默认已经是4.0了。

执行:开始->运行->cmd,在命令行下输入PowerShell 回车进入 windows PowerShell,之后我们可以输入powershell命令了,如图

输入help可以显示当前可用的命令有哪些,如图

左列是缩写命令,右列是完整的命令,如果想知道命令ac的帮助,也就是add-content命令的帮助可以输入法help ac或ac -?或man ac或get-help ac

以上几种帮助的方法都一样,读者想用哪种都可以,如果想得到详细帮助可以再上述命令后面加 -detailed来显示信息如图

相应的就的如果想得到技术类信息后面加参数-full如图

还有,如果我们想查和content相关的命令可以输入get-command *content,如图

通过学习以上帮助方法,我们可以自己查找各类命令的使用方法与帮助。

0x02 脚本编写

一个Powershell仅仅是一个包含Powershell代码的文本文件。如果这个文本文件执行,Powershell解释器会逐行解释并执行它的的语句。Powershell脚本非常像以前CMD控制台上的批处理文件。您可以通过非常简单的文本编辑工具创建Powershell脚本。如果您的脚本不是很长,您甚至可以直接在控制台中要执行的语句重定向给一个脚本文件。例如这样

‘"Hello,Powershell Script"‘ > MyScript.ps1

.\ MyScript.ps1

出这禁止执行脚本提示,执行set-ExecutionPolicy RemoteSigned设置执行策略更改,再次执行,如图

正常输出字符串,成功执行了我们的脚本。其实我们还可以用notepad编写脚本之后再运行也是一样的。

0x03实例讲解

实例1代码如下

Get-Date                                           #输出当前日期

$Env:CommonProgramFiles             #输出Program Files\Common Files环境目录

"当前目录文件数"                              #输出当前目录文件数

(ls).Count                                         #输出ls的count数

执行C:\课程工具\wzt\powershell\实例1.ps1如图

实例二代码如下

$objOu = [ADSI]"WinNT://rmt_client1"                 #rmt_client1为执行脚本的当前计算机名

$objUser = $objOU.Create("User", "hacker")        #用户名hacker

$objUser.setpassword("hacker123")                      #密码hacker123

$objUser.SetInfo()                                                  #创建帐号

$objUser.description = "Test Comm"                    #用户名描述

$objUser.SetInfo()                                                  #修改用户描述

执行C:\课程工具\wzt\powershell\实例2.ps1,如图

成功创建帐号hacker

如果在cmd下想运行此脚本,执行方式是这样的

powershell -command ".\实例2.ps1"

如图,在没有net的情况下我们成功加入帐号hacker

原文地址:https://www.cnblogs.com/-qing-/p/10625432.html

时间: 2024-10-12 20:21:27

powershell 基础的相关文章

Powershell基础知识(二)

上一节主要介绍Powershell可发现,面向对象,一致性等特性,以及Powershell命令是基于.Net对象等重要概念,以及Powershell命令的命名规范,详细内容点击这里. 这一节的Powershell基础知识主要包含以下知识点 获取命令的摘要信息. 获取命令的帮助信息. 总结. 获取命令的摘要信息 Powershell命令 Get-Command 可检索当前shell中所有可用的命令名称.在Powershell提示符输入 Get-Command ,输出的内容类似以下内容(以下只写出输

Powershell基础

一.对象 从事开发工作的都知道,面向对象的概念是为了更好用程序语言解决现实问题二提出的. 在Powershell中,对象是值我们收集信息或者执行操作的行为.包括属性和方法.Powershell中的一切皆为对象.我们所有的操作都是对对象的操作. 二.Get-Member Get-Member 可以现实有关命令返回的 .NET 对象的信息.该信息包括对象的类型.属性和方法. 若要使用 Get-Member,请使用管道运算符 (|) 将命令结果发送到 Get-Member.例如: get-Servic

8. PowerShell - 基础概要,变量,字符和字符串操作,运算符操作

PowerShell脚本的基础概要 常量,变量的使用 各种字符串的操作 对运算符的操作 数组,哈希表:创建.修改合并数组和哈希表 条件判断:if, switch 语句 逻辑判断:使用运算符进行判断 循环控制:while, do-while, do- until , for,foreach 语句 模块化:组织和调整代码:使用切当的数据类型,调用其它脚本函数 WMI对象: WMI命名空间的概念,WMI所提供的功能,查看和使用WMI命名空间. WMI的类:get-wmiobject;  查询WMI A

Powershell基础知识(一)

上节介绍了Windows自带的Powershell开发工具:命令行行窗体和集成开发环境ISE的启动及一些配置注意事项,具体细节使劲戳Powershell开发工具. 这一节介绍Powershell的基础知识,包含以下知识点 Powershell的一些特性 理解Powershell中的一些重要概念 理解Powershell中命令的命名规范 总结 Powershell的一些特性 Powershell对命令行和脚本环境添加了许多新的功能,以此来改善Powershell的管理和脚本脚本交互能力,想对于其他

PowerShell基础系列

Windows脚本初探之PowerShell初识 http://281816327.blog.51cto.com/907015/1369562 PowerShell远程管理Windows Server(1):域环境 http://281816327.blog.51cto.com/907015/1397239 PowerShell远程管理Windows Server(2):公网访问[web形式] http://281816327.blog.51cto.com/907015/1414739 Powe

windows powershell基础

目录: 1.管道和重定向 2.命令执行 3.变量 4.数组和哈希表 #@()创建数组,使用","把每个值分隔开,@{}创建哈希表,用";"把每个值分隔开 5.常用命令 get-help  查看帮助 get-command 查询命令 get-member  查看对象的成员信息 get-verb  获取所有动词 get-content 或者type  查看内容 $psversiontable   查看powershell版本 ls env:    查看所有环境变量 ls

PowerShell_零基础自学课程_1_初识PowerShell

欢迎转载本系列文章:转载请注明出处:www.cnblogs.com/volcanol 自从微软推出.Net以来,微软旗下的windows体系就发生了很大的变化,首先是操作系统的界面的变化,例如vista与XP的界面变化, 其次是一些应用的变化,例如在XP下就没有Aero桌面效果,而在Win7下就有Aero桌面效果(本人没有用过vista,不知道有没有Aero的效果). 但这些都是用户直观的感受,除了这些还有更深层次的变化,如C++的CLR和CLI.以及一些时下非常流行的技术(像WPF.WCF还有

利用Powershell在IIS上自动化部署网站

本文主要讲如何通过Powershell在IIS上自动化部署ASP.NET网站,而不涉及Powershell的基本语法,如果没有Powershell基础的同学也可以把本文作为学习Powershell的基石,通过学习本文中的脚本再去查阅具体的语法,可能会达到事半功倍的效果. 一般我们建立网站大致需要以下几个步骤: 1.安装.NET Framework 2.安装了IIS 3.注册.启用ISAPI和CGI限制 4.建立网站 5.设置默认首页.身份验证.设置MIME类型 6.绑定域名或IP地址 7.设置权

PowerShell 数组以及XML操作

PowerShell基础 PowerShell数组操作 将字符串拆分成数据的操作 cls #原始字符串 $str = "abc,def,ghi,mon" #数据定义 #$StrArray = New-Object Collections.Generic.List[string] $StrArray = @() #拆分 $StrArray = $str.Split(",") $len = $StrArray.Count Write-Host "数据中元素总数