许明会的计算机技术主页

Language:C,C++,.NET Framework(C#)
Thinking:Design Pattern,Algorithm,WPF,Windows Internals
Database:SQLServer,Oracle,MySQL,PostSQL
IT:MCITP,Exchange,Lync,Virtualization,CCNP

导航

PowerShell(0)-Windows PowerShell交互界面

我们将实验Windows PowerShell的功能,这是一系列的实验。
可参阅《Windows PowerShell应用手册》,机械工业出版社 Lee Holmes著,赵松德 王英群译。

 

PowerShell笔记 19:02 2011-4-18
1、PS支持常规的Windows命令行:ipconfig notepad……
2、PS命令行可通过Tab键补全: get-pr<tab> -N<tab> lsass
3、PS支持通配符参数:gps l*s
4、PS支持直接调用.Net Framework 类库
PS C:\> [System.Console]::WriteLine("{0},{1}",5%2.2,5/2)
0.6,2.5
PS C:\> [DateTime]::Now

2011年4月18日 19:09:54

PS C:\> calc
PS C:\> $process = Get-Process calc
PS C:\> $process.kill()

5、可组合的命令:
PS C:\> Get-Process |
>> Where-Object { $_.Handles -ge 500 } |
>> Sort-Object Handles |
>> Format-Table Handles, Name, Description -Auto
>>

Handles Name       Description
------- ----       -----------
    531 explorer   Windows Explorer
    564 csrss
    967 powershell PowerShell.EXE
   1076 System
   1568 svchost    Generic Host Process for Win32 Services


6、若要查找与给定的通配符匹配的所有命令,用Get-Command名伶。
PS C:\> Get-Command *process*

CommandType     Name                                                Definition
-----------     ----                                                ----------
Cmdlet          Get-Process                                         Get-Process [[-Name] <String[]>] [-Verbose] [-De...
Application     qprocess.exe                                        C:\WINDOWS\system32\qprocess.exe
Cmdlet          Stop-Process                                        Stop-Process [-Id] <Int32[]> [-PassThru] [-Verbo...

7、若要查找一个命令可以做什么,用 Get-Help 获得帮助
 Get_Help Get-Process

8、无处不在的脚本:计算系统的句柄总数,分析网页
PS C:\> $count = 0
PS C:\> foreach($process in Get-Process) { $count += $process.Handles }
PS C:\> $count
10149
PS C:\> $webClient = New-Object System.Net.WebClient
PS C:\> $content = $webClient.DownloadString("http://www.google.com/")
PS C:\> $content.Substring(0,1000)
Exception calling "Substring" with "2" argument(s): "Index and length must refer to a location within the string.
Parameter name: length"
At line:1 char:19
+ $content.Substring( <<<< 0,1000)
PS C:\> $content
<HTML><frameset border='0' frameSpacing='0' rows='100%,0' frameBorder='0'>
<frame id ='frm123' name='frm123' src='http://219.146.13.122/main.do?param=ABaW1zaT00NjAwMzY3NjA2MDUwNDImdXJsPXd3dy5nb2
9nbGUuY29tLyYyPS0xOTM5OTIyMjcy&ref=1'><frame id ='frmOLD' name='frmOLD' src='http://118.213.88.152/tongji.html'></frame
set></HTML>
PS C:\>
PS C:\> sqlcmd -S .\sqlexpress -E
1> use northwind
2> go
Changed database context to 'Northwind'.
1> select top 1 firstname,lastname,title from employees
2> go
firstname  lastname             title
---------- -------------------- ------------------------------
Nancy      Davolio              Sales Representative

(1 rows affected)

9、PS管理WMI(Windows Management Instrumentation)
PS C:\> Get-WmiObject win32_bios


SMBIOSBIOSVersion : R0051V1
Manufacturer      : Phoenix Technologies LTD
Name              : Ver 1.00PARTTBLL
SerialNumber      : 28240893-9003733
Version           : Sony - 20051201

10、PS使用活动目录(Active Directory),注意WinNT的大小写
PS C:\> [ADsI] "WinNT://./AdministratOR" | Format-List *
…………

11、PS导航功能
PS C:\WINDOWS> Set-Location c:\
PS C:\> Get-ChildItem
……
PS C:\> Set-Location HKCU:\Software\Microsoft\Windows\
PS HKCU:\Software\Microsoft\Windows> Get-ChildItem


   Hive: Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows

SKC  VC Name                           Property
---  -- ----                           --------
 27   0 CurrentVersion                 {}
  3   1 Shell                          {BagMRU Size}
  4   1 ShellNoRoam                    {BagMRU Size}

PS HKCU:\Software\Microsoft\Windows> Set-Location cert:\CurrentUser\Root
PS cert:\CurrentUser\Root> Get-ChildItem


    Directory: Microsoft.PowerShell.Security\Certificate::CurrentUser\Root


Thumbprint                                Subject
----------                                -------
CDD4EEAE6000AC7F40C3802C171E30148030C072  CN=Microsoft Root Certificate Authority, DC=microsoft, DC=com
A43489159A520F0D93D032CCAF37E7FE20A8B419  CN=Microsoft Root Authority, OU=Microsoft Corporation, OU=Copyright (c) 19...

 

 

 

 

posted on 2011-04-18 20:06  许明会  阅读(562)  评论(0编辑  收藏  举报