菜鸟教程之Microsoft 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 ,请单击“开始”,再单击“运行”,然后键入:
powershell
 
若要从命令提示符  (cmd exe)  窗口启动  Windows PowerShell 请在命令提示符下键入
powershell
 
若要查看用于启动  Windows PowerShell  的选项 请在命令提示符窗口中键入
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   参数):
PS> Get-Process -Name powershell | Where-Object -FilterScript {$_ Id -ne $PID} | Stop-Process -
PassThru
Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
334       9    23348      29136   143     1 03    388 powershell
304       9    23152      29040   143     1 03    632 powershell
302       9    20916      26804   143     1 03   1116 powershell
335       9    25656      31412   143     1 09   3452 powershell
303       9    23156      29044   143     1 05   3608 powershell
287       9    21044      26928   143     1 02   3672 powershell
上面这些是 ps 自带的文档里面的说明 , 有兴趣的可以试试。下次我们继续 ps 之旅。。菜菜水平很低 , 写这些呢 , 目的也是为和大家交流 , 在平时用电脑用的一些技巧。还望高人多多指点。。 QQ:182188803 See you!
原创作品首发51CTO博客,转载请注明出处:[url]http://babyxc.blog.51cto.com/[/url]
本文转自许珈毓的技术思考博客51CTO博客,原文链接http://blog.51cto.com/jiayu/35014如需转载请自行联系原作者

BabyXc
相关文章
|
1月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows Server 2012 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows Server 2012 操作系统保姆级教程(附链接)
72 0
|
1月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows Server 2003 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows Server 2003 操作系统保姆级教程(附链接)
55 0
|
1月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows 7 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows 7 操作系统保姆级教程(附链接)
90 0
如何在 VM 虚拟机中安装 Windows 7 操作系统保姆级教程(附链接)
|
1月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows XP 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows XP 操作系统保姆级教程(附链接)
117 0
|
13天前
|
Windows
【报错】在浏览器输入localhost为什么启动的是Microsoft的IIS windows首页?
【报错】在浏览器输入localhost为什么启动的是Microsoft的IIS windows首页?
|
4天前
|
安全 Unix Linux
Windows如何远程连接服务器?服务器远程连接图文教程
服务器操作系统可以实现对计算机硬件与软件的直接控制和管理协调,任何计算机的运行离不开操作系统,服务器也一样,服务器操作系统主要分为四大流派:Windows Server、Netware、Unix和Linux。今天驰网飞飞将和你分享Windows server远程连接图文教程,希望可以帮助到你
19 4
Windows如何远程连接服务器?服务器远程连接图文教程
|
1天前
|
关系型数据库 MySQL Windows
windows安装MySQL5.7教程
windows安装MySQL5.7教程
6 0
|
1月前
|
数据安全/隐私保护 网络虚拟化 开发者
appuploder全过程使用教程(Windows版本)
appuploder全过程使用教程(Windows版本)
|
2月前
|
网络协议 Shell vr&ar
某教程学习笔记(一):1、windows基础
某教程学习笔记(一):1、windows基础
19 0
|
2月前
|
网络协议 Linux iOS开发
《熬夜整理》保姆级系列教程-玩转Wireshark抓包神器教程(2)-Wireshark在Windows系统上安装部署
【2月更文挑战第2天】《熬夜整理》保姆级系列教程-玩转Wireshark抓包神器教程(2)-Wireshark在Windows系统上安装部署
48 4