Welcome 微信登录

首页 / 编程脚本

PowerShell入门教程之高效使用PowerShell交互式运行环境的几个小技巧

PowerShell入门教程之高效使用PowerShell交互式运行环境的几个小技巧

在开始关于脚本、对象和远程处理等复杂的功能之前,一直想再写一篇关于交互式运行环境的文章。因为我觉得这很重要,但是有什么是不重要呢?:)所以,说到底可能是个人喜好吧,我就是特别喜欢这种立等可取的交互方式。如何高效地使用PowerShell的交互式运行环境呢?所谓“高效”,既跟使用这个工具的熟练程度有关,也跟使用这个工具的习惯有关。习惯有无意中养成的,也有主动养成的。如果你恰好玩PowerShell不久,那么就从现在开始主动养成一些好习惯吧。多用Tab键 在...
PowerShell入门教程之Cmd命令与PowerShell命令相互调用的方法

PowerShell入门教程之Cmd命令与PowerShell命令相互调用的方法

单独使用一种脚本来完成一项任务是理想的状态,而现实的情况往往是,因为历史原因、或者团队组成,你不得不将多种脚本或者程序组合在一起,来完成某项任务。本文的讨论范围是Cmd命令与PowerShell命令之间的组合与调用。 毋庸置疑,Cmd命令与PowerShell命令之间的调用有两个方向。即在Cmd命令中调用PowerShell的命令,以及在PowerShell脚本中调用Cmd命令。需要说明的是,这里的调用分两个层次:一、简单的在其中一个的环境中执行另外一个...
PowerShell入门教程之远程操作运行PowerShell的方法

PowerShell入门教程之远程操作运行PowerShell的方法

PowerShell远程操作是远程管理的基础,它为集中管理分布式系统提供了又一种可靠、高效的方法。 一般来说PowerShell远程操作依赖于远程处理基础结构,但为数不多的几个自身具有远程处理能力的命令除外,如Get-Service、Get-Process、Get-WMIObject、Get-EventLog和Get-WinEvent等。(不难看出,这些命令都是“读取”系统的某些方面的信息,不做更改。它们依赖.Net Framework完成远程操作。)配...
PowerShell入门教程之PowerShell管道介绍

PowerShell入门教程之PowerShell管道介绍

管道对于Shell来说是个化腐朽为神奇的东西,它极大地提高了在命令行上编程的能力。深入理解并熟练使用管道是PowerShell高手之路的必经阶段。没有管道,我们就不得不通过许多的变量来保存中间结果,虽然这是脚本和其他编译型语言的惯用伎俩,但对于战斗在命令行上的Shell而言,就是一件非常痛苦的事情。管道模型 顾名思义,管道就是用管子将事物连接起来构成通道。从表面上看,管道是一串由管道符号(|)连接起来的一些命令。从功能来看,管道就像流水线,将上一个处理的...
PowerShell入门教程之函数、脚本、作用域介绍

PowerShell入门教程之函数、脚本、作用域介绍

脚本所体现的是PowerShell的编程特性,是任务自动化的基础。函数是比脚本粒度更细的代码复用单元,可以定义在命令行中或者脚本中。作用域就是变量和函数的作用范围,是执行上下文的划分。函数 函数就是命名的命令列表,与一般编程语言中的函数概念具有相同的范畴。函数中不但可以有简单命令,还可以有控制流程的命令,如if、while、switch等。函数可以有匿名参数或者命名参数列表。命令参数列表可以用大括号或者Param关键字定义。匿名函数可以使用$Args变量...
PowerShell入门教程之访问.Net程序集、COM和WMI实例

PowerShell入门教程之访问.Net程序集、COM和WMI实例

PowerShell可以设计的大而全,重新实现一切;也可以像现在一样设计成胶水语言,利用现有的资源。特别是,与.Net、COM和WMI三大豪门的联姻,使得PowerShell必将在Windows世界里大放光彩。与新锐.Net联姻 在Windows的世界里,.Net代表着现在和将来,是新生力量。与.Net联姻,就意味着榜上了粗腿,迈上了快车道。号称基于.Net Framework,那么使用.Net的基类就易如反掌。基本步骤如下:1、添加类所在程序集;2、创...
PowerShell入门教程之创建和使用配置文件实例

PowerShell入门教程之创建和使用配置文件实例

在命令行中定义别名、变量和函数,只是将它们添加在当前PowerShell的会话中。退出会话后,这些更改就会丢失。想要在以后的会话中也能使用它们,就要将它们定义在配置文件中。配置文件 PowerShell的配置文件,不像Windows操作系统中那样使用.ini文件,也不像多数应用程序那样使用XML文件。PowerShell的配置文件都是些普通的PowerShell脚本文件。需要注意的是,这些配置文件的文件名是固定、不能更改的。并且它们受到脚本执行策略的约束...
PowerShell入门教程之编写和使用脚本模块实例

PowerShell入门教程之编写和使用脚本模块实例

现在通过编写模块就可以在PowerShell命令行或者脚本中管理大型、分布式软件系统,就像Exchange Server和SharePoint Server正在做的那样。你有这样的需求吗?模块、脚本模块 模块是PowerShell V2中引入的概念,用以改进之前提出的“管理单元”。将管理单元也作为模块(二进制模块)处理之后,PowerShell中就包括两种模块——脚本模块和二进制模块。那么什么是模块呢?模块就是包含一些PowerShell命令、项的程序包...
WMI入门教程之什么是WMI?

WMI入门教程之什么是WMI?

WMI出现至今已经二十多年了,但很多人对它并不熟悉。知道它很好很强大,但不知道它从哪里来,怎么工作,使用范围是什么?现在我跟大家说说我的理解。。。 WMI有一组API。我们不管使用VBScript、PowerShell脚本还是利用C#的来访问WMI的类库,都是因为WMI向外暴露的一组API。这些API是在系统安装WMI模块的时候安装的,通过他们我们能够能拿到我们想要的类。 WMI有一个存储库。尽管WMI的多数实例数据都不存储在WMI中,但是WMI确实有一个...
WMI入门教程之怎么使用WMI?

WMI入门教程之怎么使用WMI?

知道了WMI是什么以后,肯定想要知道如何使用WMI干活。它能写“Hello World”吗?WMI没那么无聊,它一上来就会问你“你想要什么?”或者“你想要更改什么?”。。。WMI工具 Windows本身提供了几个WMI工具供用户使用,包括WMIC.exe、WBEMTest.exe和WMI Administrative Tools等。前两个是系统自带的,最后一个需要自己下载安装。不过说实话,我最喜欢WMI Administrative Tools。下载WM...
WMI入门教程之WMI中的类在哪里?

WMI入门教程之WMI中的类在哪里?

使用WMI归根到底是对WMI类的访问,如何找到合适的类是其中关键的一步。我一直在为找不到合适的类和命名空间苦恼。你也有这样的问题吗?类层次结构 WMI的类是以命名空间和继承层次方式组织的,呈树形结构。命名空间的根是root,在它的下面还有十几个命名空间,最常用的是rootcimv2。命名空间的信息存储在静态类__Namespace类中,要查询当前命名空间下的所有命名空间,可以查看__Namespace类的实例。以下是在我的机器上使用PowerShell查...
25个常用PowerShell命令总结

25个常用PowerShell命令总结

尽管Windows PowerShell已经出现一段时间了,习惯命令行的管理员可能对了解PowerShell功能的基础很感兴趣。下面我们看看能由Windows PowerShell完成的最常见的25个任务。不止是这些任务很简单,显示语句的命令架构和其他PowerShell命令也很简单。掌握好这些基本命令是成为PowerShell专家的必经之路。 入门级别 1. 像文件系统那样操作Windows Registry——cd hkcu: 2. 在文件里递回...
Powershell小技巧之非相同域或信任域也能远程

Powershell小技巧之非相同域或信任域也能远程

默认通过Enable-PSRemoting打开PS远程,启动了Kerberos认证。这个方法只适合两台电脑在相同域或信任域内的指定电脑(名字可以带后缀).但它不支持跨域、域外或IP地址。要让它能正常工作,你需要改变计算机的远程方式。请用管理员权限执行下面命令:复制代码 代码如下:PS> Set-Item WSMan:localhostClientTrustedHosts -Value * -Force 如果这个路径非法,你可能首先需要在电脑上打开PS...
Powershell小技巧之开启关闭远程连接

Powershell小技巧之开启关闭远程连接

如果你要通过Powershell远程访问电脑。这时你必须在对方电脑(你想要访问的电脑),用管理员权限执行下面代码:复制代码 代码如下:PS> Enable-PSRemoting -SkipNetworkProfileCheck -Force 一旦你这样执行了代码,你只要拥有目标电脑的本地管理员权限就能从其它窗体访问这台电脑了。当两台电脑在同一个域内你就可以直接指定计算机名而不需要它的IP的地址。启动交互方式:复制代码 代码如下: PS> Ent...
使用HTTP api简单的远程执行PowerShell脚本

使用HTTP api简单的远程执行PowerShell脚本

可能有些情况下,你不想完全体验通过PSRP(PowerShell远程处理协议)远程管理,或有需要从非Windows系统上执行一些PowerShell脚本。你可能会像我很久之前在这篇文章中写的那样直接基于WS-Man来写代码。但是那样很复杂,并且需要WS-Man和SOAP的一些知识。我在PowerShell脚本中使用.Net HttpListener类写了个HTTP监听器。你可以非常简单地启动一个监听器的实例(需要提升权限监听网络),现在你可以执行任意的Po...
Powershell小技巧之使用WS-Man来调用PowerShell命令

Powershell小技巧之使用WS-Man来调用PowerShell命令

虽然PowerShell远程管理被构建在 WS-Management的之上,但它是协议中的协议。如果尝试使用 PSRP (PowerShell远程处理协议)直接进行交互,本质上需要在客户端机器上运行一个PowerShell副本。另一种方法是使用一个鲜为人知的远程命令行工具,称为WinRS。WinRS是一个简单的工具,允许远程CMD.EXE,它也是构建在WS-Management之上的。所不同的是WinRS重用了 WS-Transfer中的Create和De...
Windows Powershell For 循环

Windows Powershell For 循环

如果你知道循环的确切次数可以使用For循环,For循环属于计数型循环,一旦达到最大次数,循环就会自动终止。下面的例子通过循环求1-100的数列和。复制代码 代码如下:$sum=0for($i=1;$i -le 100;$i++){ $sum+=$i}$sumFor循环是特殊类型的While循环在For循环开始的圆括号中,由分号隔开的语句为循环的控制条件,分别为:初始化,循环执行满足的条件,增量。For循环的控制语句第一个和第三个可以为空:复制代码 代码如下...
<< 61 62 63 64 65 66 67 68 69 70 >>