原创作品首发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]