鸿 网 互 联 www.68idc.cn

菜鸟教程之Microsoft Windows Powershell推荐

来源:互联网 作者:佚名 时间:2018-02-10 16:38
原创作品首发51CTO博客,转载请注明出处:[url]http://babyxc.blog.51cto.com/[/url]I’m back!再不更新blog就要挨骂了。今天给大家带来点新知识,Microsoft windows powershell!(后面的都简称Ps)什么是ps?它能给我们带来什么? Windows PowerShell 是专为系
原创作品首发51CTO博客,转载请注明出处:[url]http://babyxc.blog.51cto.com/[/url]   I’m back!再不更新blog就要挨骂了。今天给大家带来点新知识,Microsoft windows powershell!(后面的都简称Ps)什么是ps?它能给我们带来什么? Windows PowerShell 是专为系统管理员设计的新 Windows 命令行外壳程序。该外壳程序包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用。   与接受和返回文本的大多数外壳程序不同,Windows PowerShell 是在 。NET 公共语言运行时 (CLR) 和 。NET Framework 的基础上构建的,它接受和返回 。NET 对象。环境中的这一根本更改带来了管理和配置 Windows 的全新工具和方法。   Windows PowerShell 引入了 cmdlet(读作“command-let”)的概念,这是内置到外壳程序中的一个简单的单一功能命令行工具。可以分别使用每个 cmdlet,但是组合使用这些简单的工具执行复杂任务时才发挥其作用。Windows PowerShell 包括一百多个基本的核心 cmdlet,您可以编写自己的 cmdlet 并与其他用户共享它们。(原创作品首发51CTO博客,转载请注明出处:[url]http://babyxc.blog.51cto.com/[/url])   与许多外壳程序一样,Windows PowerShell 为您提供了对计算机上文件系统的访问。此外,使用 Windows PowerShell 提供程序,还可以访问其他数据存储区,如注册表和数字签名证书存储区,与访问文件系统一样容易。 Windows PowerShell 有很大不同  ·  Windows PowerShell 不处理文本。相反,它基于 。NET 平台处理对象。  ·  Windows PowerShell 附带了具有一致界面的大量内置命令。 ·  所有的外壳程序命令都使用同一命令分析程序,而不是每个工具使用不同的分析程序。这样便可更轻松地学习如何使用每个命令。 其最好的优点在于,您不必忍痛舍弃自己惯用的工具。仍可以在 Windows PowerShell 中使用传统的 Windows 工具,如 Net、SC 和 Reg。exe。 cmdlet(读作“command-let”)是 Windows PowerShell 中用于操作对象的单功能命令。可以通过其名称格式识别 cmdlet -- 由短划线 (-) 分隔的动词和名词,如 Get-Help、Get-Process 和 Start-Service。 在传统的外壳程序中,命令是从非常简单(如 attrib。exe)到非常复杂(如 netsh。exe)的可执行程序。 (原创作品首发51CTO博客,转载请注明出处:[url]http://babyxc.blog.51cto.com/[/url])   在 Windows PowerShell 中,大多数 cmdlet 都非常简单,它们设计为与其他 cmdlet 组合使用。例如,“get”cmdlet 仅检索数据,“set”cmdlet 仅建立或更改数据,“format”cmdlet 仅设置数据格式,“out”cmdlet 仅将输出定向到指定的目标。看了一些最基本的概念性问题,我们现在开始动动手。ps: PowerShell is designed to run on all recent versions of Windows including those based on x64 processors。 The only prerequisite for installing PowerShell is that you must first install v2。0 of the Microsoft 。NET Framework。 Note that PowerShell will preinstall in certain situations。 For example, PowerShell is part of the Exchange Server 2007 administrative tools。这是运行ps的需求!(原创作品首发51CTO博客,转载请注明出处:[url]http://babyxc.blog.51cto.com/[/url])   Ps的启动有3种方式。 若要从“开始”菜单启动 Windows PowerShell,请依次单击“开始”、“所有程序”、Windows PowerShell 1。0 和 Windows PowerShell。   若要从“运行”框启动 Windows PowerShell,请单击“开始”,再单击“运行”,然后键入:
  在 Windows PowerShell 打开时,可以使用 Get-Help cmdlet 查找帮助。在 Windows PowerShell 命令提示符下,键入: get-help 我用的是第一种方式:   这就是ps的工作界面…看起来如何…。貌似跟cmd。exe的界面差不多…首先我们看看ps里面有多少cmdlet!很简单。get-command。   看的眼睛都花了。下面我们将介绍如何用ps执行管理任务。先从进程说起吧。 核心进程 cmdlet 只有两个:Get-Process 和 Stop-Process。由于有可能使用参数或对象 cmdlet 来检查和筛选进程,因此可以只使用这两个 cmdlet 来执行一些复杂的任务。 也是平时用的最多的。get-process是管理进程的cmdlet。如下图:   通过无参数运行 Get-Process,可以获得正在本地系统中运行的所有进程的列表。 通过使用 Id或者name 参数,还可以返回单个进程。看图:   这是本机运行的qq程序。如果要停止的话,就需要用到Stop-Process cmdlet 采用 Name 或 ID 来指定希望停止的进程。是否能够停止进程取决于您的权限。某些进程不能停止。看图!   可以用 Confirm 参数强制进行提示。     是不是很简单啊…觉得用ps管理进程真的很简单…我觉得比我以前用的wmic都简单些。这只是些最常见的操作。。看复杂一点的—— 通过使用某些对象筛选 cmdlet,可以进行复杂的进程操作。由于进程对象有 Responding 属性,当进程不再响应时该属性将为 True,因此可以用以下命令停止所有无响应的应用程序:
Get-Process | Where-Object -FilterScript {$_。Responding -eq $false} | Stop-Process   您可以在其他情况下使用相同的方法。例如,假设用户启动一个应用程序时另一个辅助的系统任务栏应用程序自动运行。您可能发现这在终端服务会话中无法正确工作,但仍然需要使它在物理计算机控制台上的会话中持续运行。连接到物理计算机桌面的会话的会话 ID 始终是 0,因此通过使用 Where-Object 和进程的 SessionId,可以停止在其他会话中的所有进程实例:
Get-Process -Name BadApp | Where-Object -FilterScript {$_。SessionId -neq 0} | Stop-Process
  可能偶尔需要能够停止除了当前会话以外所有正在运行的 Windows PowerShell 会话。如果会话正在使用太多资源,或者不可访问(它可能正在远程运行,或者在另一个桌面会话中),则可能无法直接停止它。但是,如果试图停止所有正在运行的会话,则可能终止当前会话。 每个 Windows PowerShell 会话都有环境变量 PID,其中包含 Windows PowerShell 进程的 ID。可以对照每个会话的 ID 检查该 $PID,并只终止有不同 ID 的 Windows PowerShell 会话。以下管道命令执行此操作,并返回被终止会话的列表(由于使用了 PassThru 参数):
网友评论
<