Powershell进行数学运算

我们可以把powershell当成一个计算器。和键入命令行那样输入数学表达式,回车,powershell会自动计算并把结果输出。常用的加减乘除模(+,-,*,/,%)运算和小括号表达式都支持。

PowerShell也能自动识别计算机容量单位,包括KB,MB,GB,TB,PB

假如一个网站每个页面大小为80kb,统计显示每天的PV操作为800,1个月下来占用的带宽:

假如一个网站的每天人均PV操作为5,页面大小为80Kb,主机提供商限制的总流量为10G,那平均每天的最大访客数为:

执行外部命令

通过netstat查看网络端口状态

PS C:\PS> netstatActive ConnectionsProto  Local Address          Foreign Address        StateTCP    192.168.0.100:3049    192.168.0.88:7575       ESTABLISHEDTCP    192.168.0.100:3052    192.168.0.88:7575       ESTABLISHEDTCP    192.168.0.100:3061    192.168.0.88:7575       ESTABLISHED

使用ipconfig查看自己的网络配置

PS C:\PS> ipconfigWindows IP ConfigurationEthernet adapter Local Area Connection:Connection-specific DNS Suffix  . : www.mossfly.comLink-local IPv6 Address . . . . . : fe80::b9dd:91e33:33f0:7885%10IPv4 Address. . . . . . . . . . . : 192.168.140.100Subnet Mask . . . . . . . . . . . : 255.255.252.0Default Gateway . . . . . . . . . : 192.168.140.1Tunnel adapter isatap.www.mossfly.com:Connection-specific DNS Suffix  . : www.mossfly.comLink-local IPv6 Address . . . . . : fe80::5efe:192.168.140.100%11Default Gateway . . . . . . . . . :Tunnel adapter Teredo Tunneling Pseudo-Interface:Media State . . . . . . . . . . . : Media disconnectedConnection-specific DNS Suffix  . :

查看路由信息

PS C:\PS> route print
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric0.0.0.0          0.0.0.0     192.168.140.1   192.168.140.100     20192.0.0.0        255.0.0.0         On-link         192.0.0.1    306192.0.0.1  255.255.255.255         On-link         192.0.0.1    306192.255.255.255  255.255.255.255         On-link         192.0.0.1    306192.168.140.0    255.255.252.0         On-link    192.168.140.100    276192.168.140.100  255.255.255.255         On-link    192.168.140.100    276192.168.143.255  255.255.255.255         On-link    192.168.140.100    276224.0.0.0        240.0.0.0         On-link         192.0.0.1    306224.0.0.0        240.0.0.0         On-link    192.168.140.100    276255.255.255.255  255.255.255.255         On-link         192.0.0.1    306255.255.255.255  255.255.255.255         On-link    192.168.140.100    276
===========================================================================
Persistent Routes:NoneIPv6 Route Table
===========================================================================
Active Routes:If Metric Network Destination      Gateway1    306 ::1/128                  On-link10    276 fe80::/64                On-link11    281 fe80::5efe:192.168.140.100/128On-link10    276 fe80::b965:91f3:33a0:7285/128On-link1    306 ff00::/8                 On-link10    276 ff00::/8                 On-link
===========================================================================
Persistent Routes:None

启动CMD控制台键入cmd或者cmd.exe,退出cmd可以通过命令exit。

PS C:\PS> cmd
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.C:\PS>exit
PS C:\PS>

查找可用的cmd控制台命令

cmd.exe 通过 /c 来接收命令参数,在cmd中help可以查看可用的命令,所以可以通过dmd /c help 查找可用的cmd控制台命令

PS C:\PS> cmd /c help
有关某个命令的详细信息,请键入 HELP 命令名
ASSOC          显示或修改文件扩展名关联。
ATTRIB         显示或更改文件属性。
BREAK          设置或清除扩展式 CTRL+C 检查。
BCDEDIT        设置启动数据库中的属性以控制启动加载。
CACLS          显示或修改文件的访问控制列表(ACL)。
CALL           从另一个批处理程序调用这一个。
CD             显示当前目录的名称或将其更改。
CHCP           显示或设置活动代码页数。
CHDIR          显示当前目录的名称或将其更改。
CHKDSK         检查磁盘并显示状态报告。
CHKNTFS        显示或修改启动时间磁盘检查。
CLS            清除屏幕。
CMD            打开另一个 Windows 命令解释程序窗口。
COLOR          设置默认控制台前景和背景颜色。
COMP           比较两个或两套文件的内容。
COMPACT        显示或更改 NTFS 分区上文件的压缩。
CONVERT        将 FAT 卷转换成 NTFS。您不能转换当前驱动器。
COPY           将至少一个文件复制到另一个位置。
DATE           显示或设置日期。
DEL            删除至少一个文件。
DIR            显示一个目录中的文件和子目录。
DISKCOMP       比较两个软盘的内容。
DISKCOPY       将一个软盘的内容复制到另一个软盘。
DISKPART       显示或配置磁盘分区属性。
DOSKEY         编辑命令行、调用 Windows 命令并创建宏。
DRIVERQUERY    显示当前设备驱动程序状态和属性。
ECHO           显示消息,或将命令回显打开或关上。
ENDLOCAL       结束批文件中环境更改的本地化。
ERASE          删除一个或多个文件。
EXIT           退出 CMD.EXE 程序(命令解释程序)。
FC             比较两个文件或两个文件集并显示它们之间的不同。
FIND           在一个或多个文件中搜索一个文本字符串。
FINDSTR        在多个文件中搜索字符串。
FOR            为一套文件中的每个文件运行一个指定的命令。
FORMAT         格式化磁盘,以便跟 Windows 使用。
FSUTIL         显示或配置文件系统的属性。
FTYPE          显示或修改用在文件扩展名关联的文件类型。
GOTO           将 Windows 命令解释程序指向批处理程序中某个带标签的行。
GPRESULT       显示机器或用户的组策略信息。
GRAFTABL       启用 Windows 在图形模式显示扩展字符集。
HELP           提供 Windows 命令的帮助信息。
ICACLS         显示、修改、备份或还原文件和目录的 ACL。
IF             在批处理程序中执行有条件的处理过程。
LABEL          创建、更改或删除磁盘的卷标。
MD             创建一个目录。
MKDIR          创建一个目录。
MKLINK         创建符号链接和硬链接
MODE           配置系统设备。
MORE           逐屏显示输出。
MOVE           将一个或多个文件从一个目录移动到另一个目录。
OPENFILES      显示远程用户为了文件共享而打开的文件。
PATH           为可执行文件显示或设置搜索路径。
PAUSE          停止批处理文件的处理并显示信息。
POPD           还原由 PUSHD 保存的当前目录上一次的值。
PRINT          打印一个文本文件。
PROMPT         改变 Windows 命令提示。
PUSHD          保存当前目录,然后对其进行更改。
RD             删除目录。
RECOVER        从损坏的磁盘中恢复可读取的信息。
REM            记录批处理文件或 CONFIG.SYS 中的注释。
REN            重新命名文件。
RENAME         重新命名文件。
REPLACE        替换文件。
RMDIR          删除目录。
ROBOCOPY       复制文件和目录树的高级实用程序
SET            显示、设置或删除 Windows 环境变量。
SETLOCAL       开始用批文件改变环境的本地化。
SC             显示或配置服务(后台处理)。
SCHTASKS       安排命令和程序在一部计算机上按计划运行。
SHIFT          调整批处理文件中可替换参数的位置。
SHUTDOWN       让机器在本地或远程正确关闭。
SORT           将输入排序。
START          打开单独视窗运行指定程序或命令。
SUBST          将驱动器号与路径关联。
SYSTEMINFO     显示机器的具体的属性和配置。
TASKLIST       显示包括服务的所有当前运行的任务。
TASKKILL       终止正在运行的进程或应用程序。
TIME           显示或设置系统时间。
TITLE          设置 CMD.EXE 会话的窗口标题。
TREE           以图形显示启动器或路径的目录结构。
TYPE           显示文本文件的内容。
VER            显示 Windows 的版本。
VERIFY         告诉 Windows 验证文件是否正确写入磁盘。
VOL            显示磁盘卷标和序列号。
XCOPY          复制文件和目录树。
WMIC           在交互命令外壳里显示 WMI 信息。

启动外部程序

为什么可以通过notpad打开记事本,不能通过wordpad打开写字板?
因为notepad.exe位于C:Windows\system32这个目录,而这个目录已经默认被包含在Powershell的环境变量$env:Path中。

C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x
86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program File
s (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Program Files\Microsoft\Web Platform Installer\

而wordpad.exe 所在的“%ProgramFiles%\WindowsNT\Accessories\wordpad.exe“目录却没有包含,可以先进入这个目录,再运行wordpad,或者将wordpad所在的目录加入到环境变量中,
$env:Path=$env:Path+”%ProgramFiles%\Windows NT\Accessories”。
默认键入一个字符串,powershell会将它原样输出,如果该字符串是一个命令或者启动程序,在字符串前加‘&’可以执行命令,或者启动程序。

PS C:\PS> "ls"
ls
PS C:\PS> &"ls"Directory: C:\PSMode                LastWriteTime     Length Name
----                -------------     ------ ----
d----        2011/11/23     17:25            ABC
-a---        2011/11/23     17:36         14 a.txt
-a---        2011/11/23     17:25          0 b.txt
-a---        2011/11/23     17:25          0 c.txt
-a---        2011/11/23     17:25          0 d.txt
-a---        2011/11/23     17:37        242 test.txtPS C:\PS> "cmd.exe"
cmd.exe
PS C:\PS> &"cmd.exe"
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

别名

cmdlet 的名称由一个动词和一个名词组成,其功能对用户来讲一目了然。但是对于一个经常使用powershell命令的人每天敲那么多命令也很麻烦啊。能不能把命令缩短一点呢?于是“别名”就应运而生了。Powershell内部也实现了很多常用命令的别名。例如Get-ChildItem,列出当前的子文件或目录。它有两个别名:ls 和 dir,这两个别名来源于unix 的shell和windows的cmd。
因此别名有两个作用:

继承:继承unix-shell和windows-cmd。

方便:方便用户使用。

处理别名:

查询别名所指的真实cmdlet命令。

PS C:\PS> Get-Alias -name lsCommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           ls                                                  Get-ChildItemPS C:\PS> Get-Alias -name dirCommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           dir                                                 Get-ChildItemPS C:\PS> Get-Alias -name flCommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           fl                                                  Format-ListPS C:\PS> Get-Alias -name ftCommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           ft                                                  Format-Table

查看可用的别名

查看可用的别名,可以通过” ls alias:” 或者 ”Get-Alias“
如何查看所有以Remove打头的cmdlet的命令的别名呢?

PS C:\PS> dir alias: | where {$_.Definition.Startswith("Remove")}CommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           del                                                 Remove-Item
Alias           erase                                               Remove-Item
Alias           rbp                                                 Remove-PSBreakpoint
Alias           rd                                                  Remove-Item
Alias           rdr                                                 Remove-PSDrive
Alias           ri                                                  Remove-Item
Alias           rjb                                                 Remove-Job
Alias           rm                                                  Remove-Item
Alias           rmdir                                               Remove-Item
Alias           rmo                                                 Remove-Module
Alias           rp                                                  Remove-ItemProperty
Alias           rsn                                                 Remove-PSSession
Alias           rsnp                                                Remove-PSSnapin
Alias           rv                                                  Remove-Variable
Alias           rwmi                                                Remove-WMIObject

说明:dir alias:获取的是别名的数组,通过where对数组元素进行遍历,$_代表当前元素,alias的Definition为String类型,因为powershell支持.net,.net中的string类有一个方法Startswith。通过where过滤集合在powershell中使用非常广泛。

有的cmdlet命令可能有2-3个别名,我们可以通过下面的命令查看所有别名和指向cmdlet的别名的个数。

PS C:\PS> ls alias: | Group-Object definition | sort -Descending CountCount Name                      Group
----- ----                      -----6 Remove-Item               {del, erase, rd, ri...}3 Set-Location              {cd, chdir, sl}3 Get-History               {ghy, h, history}3 Get-ChildItem             {dir, gci, ls}3 Get-Content               {cat, gc, type}3 Move-Item                 {mi, move, mv}3 Copy-Item                 {copy, cp, cpi}2 Start-Process             {saps, start}2 Set-Variable              {set, sv}2 Write-Output              {echo, write}2 Get-Process               {gps, ps}2 Invoke-History            {ihy, r}2 New-PSDrive               {mount, ndr}2 Stop-Process              {kill, spps}2 Rename-Item               {ren, rni}2 Get-Location              {gl, pwd}2 Compare-Object            {compare, diff}2 Where-Object              {?, where}2 ForEach-Object            {%, foreach}2 Clear-Host                {clear, cls}1 Out-Host                  {oh}1 New-PSSession             {nsn}1 New-Variable              {nv}1 Out-GridView              {ogv}1 Pop-Location              {popd}1 Tee-Object                {tee}1 Remove-PSBreakpoint       {rbp}1 Receive-Job               {rcjb}1 Push-Location             {pushd}1 mkdir                     {md}1 Measure-Object            {measure}1 help                      {man}1 Remove-PSSnapin           {rsnp}1 Out-Printer               {lp}1 New-Item                  {ni}1 New-Module                {nmo}1 New-Alias                 {nal}1 Move-ItemProperty         {mp}1 Wait-Job                  {wjb}1 Remove-PSDrive            {rdr}1 Start-Service             {sasv}1 Set-PSBreakpoint          {sbp}1 Set-ItemProperty          {sp}1 Start-Job                 {sajb}1 Set-Alias                 {sal}1 Start-Sleep               {sleep}1 Set-Item                  {si}1 Select-Object             {select}1 Set-Content               {sc}1 Sort-Object               {sort}1 Remove-WMIObject          {rwmi}1 Remove-Module             {rmo}1 Rename-ItemProperty       {rnp}1 Stop-Service              {spsv}1 Set-WMIInstance           {swmi}1 Remove-Job                {rjb}1 Remove-Variable           {rv}1 Resolve-Path              {rvpa}1 Stop-Job                  {spjb}1 Remove-ItemProperty       {rp}1 Remove-PSSession          {rsn}1 Exit-PSSession            {exsn}1 Format-Custom             {fc}1 Enter-PSSession           {etsn}1 Export-Csv                {epcsv}1 Export-PSSession          {epsn}1 Format-List               {fl}1 Get-PSBreakpoint          {gbp}1 Get-Command               {gcm}1 Get-Alias                 {gal}1 Format-Table              {ft}1 Format-Wide               {fw}1 Export-Alias              {epal}1 Clear-History             {clhy}1 Clear-Item                {cli}1 Clear-Content             {clc}1 Add-Content               {ac}1 Add-PSSnapIn              {asnp}1 Clear-ItemProperty        {clp}1 Disable-PSBreakpoint      {dbp}1 Enable-PSBreakpoint       {ebp}1 Convert-Path              {cvpa}1 Clear-Variable            {clv}1 Copy-ItemProperty         {cpp}1 Invoke-Expression         {iex}1 Invoke-Item               {ii}1 Invoke-Command            {icm}1 Get-Variable              {gv}1 Get-WmiObject             {gwmi}1 Import-Alias              {ipal}1 powershell_ise.exe        {ise}1 Invoke-WMIMethod          {iwmi}1 Import-PSSession          {ipsn}1 Import-Csv                {ipcsv}1 Import-Module             {ipmo}1 Get-Unique                {gu}1 Get-Job                   {gjb}1 Get-Member                {gm}1 Get-Item                  {gi}1 Get-PSCallStack           {gcs}1 Get-PSDrive               {gdr}1 Get-Module                {gmo}1 Get-PSSnapIn              {gsnp}1 Get-Service               {gsv}1 Get-PSSession             {gsn}1 Get-ItemProperty          {gp}1 Group-Object              {group}

创建自己的别名

给记事本创建一个别名,并查看该别名;

PS C:\PS> Set-Alias -Name Edit -Value notepad
PS C:\PS> Edit
PS C:\PS> $alias:Edit
notepad

删除自己的别名

别名不用删除,自定义的别名在powershell退出时会自动清除。但是请放心,powershell内置别名(诸如ls,dir,fl等)不会清除。如果你非得手工删除别名。请使用

PS C:\PS> del alias:Edit

保存自己的别名

可以使用Export-Alias将别名导出到文件,需要时再通过Import-Alias导入。但是导入时可能会有异常,提示别名已经存在无法导入:

PS C:\PS> Import-Alias alias.ps1
Import-Alias : Alias not allowed because an alias with the name 'ac' already exists.
At line:1 char:13
+ Import-Alias <<<<  alias.ps1+ CategoryInfo          : ResourceExists: (ac:String) [Import-Alias], SessionStateException+ FullyQualifiedErrorId : AliasAlreadyExists,Microsoft.PowerShell.Commands.ImportAliasCommand

这时可以使用Force强制导入。

PS C:\PS> Export-Alias alias.ps1
PS C:\PS> Import-Alias -Force alias.ps1

Powershell 通过函数扩展别名

在Powershell中设置别名的确方便快捷,但是在设置别名的过程中并设置参数的相关信息。尽管别名会自动识别参数,但是如何把经常使用的参数默认设定在别名里面呢?例如Test-Connection-Count 2 -ComputerName,让-“-Count 2” 固化在别名中。
这时简单的别名无法完成上述需求,可以通过函数来完成它,并且一旦把函数拉过来,定义别名会变得更加灵活。

PS C:\PS> function test-conn { Test-Connection  -Count 2 -ComputerName $args}
PS C:\PS> Set-Alias tc test-conn
PS C:\PS> tc localhostSource        Destination     IPV4Address      IPV6Address                              Bytes    Time(ms)
------        -----------     -----------      -----------                              -----    --------
test-me-01   localhost       127.0.0.1        ::1                                      32       0
test-me-01   localhost       127.0.0.1        ::1                                      32       0

Powershell执行文件和脚本

像运行可执行文件一样,Powershell运行文件和脚本,也必须使用绝对路径或者相对路径,或者要运行的文件必须定义在可受信任的环境变量中。

关于脚本

脚本和批处理都属于伪可执行文件,它们只是包含了若干命令行解释器能够解释和执行的命令行代码。

执行批处理文件

批处理是扩展名为”.bat”的文本文件,它可以包含任何cmd控制台能够处理的命令。当批处理文件被打开,Cmd控制台会逐行执行每条命令。那Powershell能够直接执行批处理吗?
将下列命令保存为ping.bat

@echo off
echo batch File Test
pause
Dir %windir%/system

然后执行ping
屏幕会打印ping命令帮助,说明调用的ping cmd 而不是ping.bat。
改为:

PS C:\PS> ./ping
batch File Test
Press any key to continue . . .Volume in drive C has no label.Volume Serial Number is 4E9B-D846Directory of C:Windowssystem2009/06/11  05:21            69,584 avicap.dll
2009/06/11  05:21           109,456 avifile.dll
2009/07/14  05:41            32,816 COMMDLG.DLL
2009/07/14  05:41             2,000 keyboard.drv
2009/06/11  05:42             9,936 lzexpand.dll
2009/06/11  05:21            73,376 mciavi.drv
2009/06/11  05:21            25,264 mciseq.drv
2009/06/11  05:21            28,160 mciwave.drv
2009/07/14  05:41            68,992 MMSYSTEM.DLL
2009/07/14  05:41             1,152 mmtask.tsk
2009/07/14  05:41             2,032 mouse.drv
2009/06/11  05:21           126,912 msvideo.dll
2009/06/11  05:42            82,944 olecli.dll
2009/07/14  05:41            24,064 OLESVR.DLL
2009/07/14  05:41             5,120 SHELL.DLL
2009/07/14  05:41             1,744 sound.drv
2009/06/11  05:25             5,532 stdole.tlb
2009/07/14  05:41             3,360 system.drv
2009/07/14  05:41             4,048 TIMER.DRV
2009/06/11  05:42             9,008 ver.dll
2009/07/14  05:41             2,176 vga.drv
2009/07/14  05:41            12,704 WFWNET.DRV22 File(s)        700,380 bytes2 Dir(s)  75,927,420,928 bytes free

这时运行的是批处理。

通过cmd进入cmd控制台输入ping发现执行的不是ping命令,而是直接运行ping.bat ,也就是说可以通过.bat 覆盖cmd命令。这种机制很危险,如果有人侵入电脑,并将系统内部命令篡改成自己批处理,那就太悲剧了。 这种命令与脚本的混淆不会发生在powershell中,因为powershell有更安全的机制。

执行VB脚本文件

将下列命令保存为test.vbs

Set wmi = GetObject("winmgmts:")
Set collection = wmi.ExecQuery("select * from Win32_Process")
For Each process in collection
WScript.Echo process.getObjectText_
Next

执行 .\test.vbs 会遍历当前Win32进程,并把每个进程的详细信息通过窗口显示出来。
怎样让VB脚本的通过控制台输出呢?
Wscript //H:CScript
怎样还原VB脚本通过窗口输出呢?
WScript //H:WScript
在powershell中执行VB脚本

PS C:\PS> cscript.exe .test.vbs
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.instance of Win32_Process
{Caption = "System Idle Process";CreationClassName = "Win32_Process";CSCreationClassName = "Win32_ComputerSystem";CSName = "test-me-01";Description = "System Idle Process";Handle = "0";HandleCount = 0;KernelModeTime = "484113379271";Name = "System Idle Process";OSCreationClassName = "Win32_OperatingSystem";OSName = "Microsoft Windows 7 Enterprise |C:Windows|DeviceHarddisk0Partition2";OtherOperationCount = "0";OtherTransferCount = "0";PageFaults = 0;PageFileUsage = 0;ParentProcessId = 0;PeakPageFileUsage = 0;PeakVirtualSize = "0";PeakWorkingSetSize = 0;Priority = 0;PrivatePageCount = "0";ProcessId = 0;QuotaNonPagedPoolUsage = 0;QuotaPagedPoolUsage = 0;QuotaPeakNonPagedPoolUsage = 0;QuotaPeakPagedPoolUsage = 0;ReadOperationCount = "0";ReadTransferCount = "0";SessionId = 0;ThreadCount = 2;UserModeTime = "0";VirtualSize = "0";WindowsVersion = "6.1.7601";WorkingSetSize = "24576";WriteOperationCount = "0";WriteTransferCount = "0";
};

执行powershell脚本

Powershell拥有自己的脚本,扩展名为“.ps1”

PS C:\PS> echo "dir;Get-PSProvider;help dir" >test.ps1
PS C:\PS> Get-Content ./test.ps1
dir;Get-PSProvider;help dir
PS C:\PS> ./test.ps1

初次执行脚本时,可能会碰到一个异常:
File ” C:\PS\test.ps1″ cannot be loadedbecause the
execution of scripts is disabled on this system. Please see
“get-help about_signing” for moredetails.
At line:1 char:10
+ .test.ps1 <<<<

这是powershell的默认安全设置禁用了执行脚本,要启用这个功能需要拥有管理员的权限。

Powershell调用入口的优先级

别名:控制台首先会寻找输入是否为一个别名,如果是,执行别名所指的命令。因此我们可以通过别名覆盖任意powershell命令,因为别名的优先级最高。

函数:如果没有找到别名,会继续寻找函数,函数类似别名,只不过它包含了更多的powershell命令。因此可以自定义函数扩充cmdlet 把常用的参数给固化进去。

命令:如果没有找到函数,控制台会继续寻找命令,即cmdlet,powershell的内部命令。

脚本:没有找到命令,继续寻找扩展名为“.ps1”的Powershell脚本。

文件:没有找到脚本,会继续寻找文件,如果没有可用的文件,控制台会抛出异常。
The term ‘now’ is notrecognized as the name of a cmdlet, function, script file, or operable program.Chec
g of the name, or if a path was included, verify that the path is correct andtry again.
At line:1 char:4
+ now <<<<
+ CategoryInfo : ObjectNotFound: (now:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

参考:pstips

Powershell————2、Powershell交互式相关推荐

  1. bat运行exe 自动确认_无powershell运行powershell方法总结

    原创: lengyi 合天智汇 今天给大家带来的是,无powershell运行powershell的一些姿势的分享,由于powershell的特性,使得它很受渗透测试爱好者的喜爱,当然也催生了像ASM ...

  2. 了解PowerShell命令——PowerShell三分钟(二)

    好了,之前我们讲过学习PowerShell的必要性,那么今天开始实际操作下PowerShell. PowerShell预装在Windows 7以上的系统中,无需额外下载,即可使用 你可以在开始菜单中找 ...

  3. powershell提取html字段,Windows PowerShell:PowerShell 中的 HTML 报告

    Windows PowerShell:PowerShell 中的 HTML 报告 08/17/2016 本文内容 事实上,您可以使用 Microsoft Windows PowerShell Cmdl ...

  4. Powershell tricks::Powershell Remoting

    DM_ · 2014/11/03 10:03 0x01 简介 Powershell Remoting建立在windows WinRM服务之上,可以一对一或一对多远程控制,也可以建立HTTP 或 HTT ...

  5. bat脚本交互输入_测评 | 不使用powershell运行 PowerShell 脚本的工具汇总

    不使用 powershell.exe 的情况下,可以运行 powershell 脚本和命令么? 可以的! 本文总结了6款可直接运行 powershell 脚本和命令的工具,献给所有的渗透测试人员和红队 ...

  6. 第一个PowerShell脚本——PowerShell三分钟(九)

    前面把基础知识讲了一遍,现在我们开始写一个最初级的脚本 写脚本的工具有很多,有文本文档,有PowerShell ISE,PowerShell Studio等,这里选用系统自带的PowerShell I ...

  7. Azure PowerShell (1) PowerShell整理

    <Windows Azure Platform 系列文章目录> 把之前Azure ASM的PowerShell都整理好了. https://github.com/leizhang1984/ ...

  8. PowerShell变量——PowerShell三分钟(七)

    有了前面的PowerShell基础,今天我们来学习一个可以极大提升PowerShell效率的用法--变量 简答来说呢,变量就是在内存中的一个带有名字的盒子~~~~~你可以把所有想存放的东西都放到这个& ...

  9. 从零开始学PowerShell(10)PowerShell中的子表达式

    在PowerShell中你或许看到过类似@(......), $(......),(......)这类使用圆括号将一系列语句包裹在一起的写法形式出现在脚本中.今天我们要说的就是这几种表达式,它们被称作 ...

  10. PowerShell: 在PowerShell窗口中设置自动补全和智能提示

    前言 随着PowerShell的兴起和不断完善,在Windows中的Shell体验不断的改进.但是之前有好多东西依然没有太大的改进.例如说之前我们在CMD或者PowerShell中要执行之前执行过的命 ...

最新文章

  1. linux 命令行使用技巧linux 下的文件管理
  2. GitHub 发布 2018 年开源项目趋势预测
  3. 开源纯C#工控网关+组态软件(四)上下位机通讯原理
  4. zip unzip_zip和unzip上的Java要点
  5. 表示探索、探究的几个词
  6. Nodejs学习笔记(一)——基础之全局对象、包和npm
  7. Google猜画小歌升级:现在可以跟好友对战了
  8. respberry pi VNC 连接设置
  9. 4月4日 逻辑回归(Logistic Regression-LR)与SVM
  10. MATLAB中cfl,教程合集 | MATLAB绘图基本操作与属性
  11. 5G+VR慢直播,带来沉浸式VR直播体验
  12. 《Machine Learning in Action》—— hao朋友,快来玩啊,决策树呦
  13. 苹果自带计算机误删,苹果手机日历误删怎样恢复?恢复的小技巧
  14. Oracle导出DMP文件的两种方法
  15. SAP 生产订单/工单状态说明
  16. 安卓 - jsoup批量下载图片(以每日必应图片示例)
  17. 怎样成长为更好的自己--《靠谱:顶尖咨询师教你的工作基本功》
  18. 成功解决需要Xmanager软件来处理X11转发需求
  19. 集成方法-随机森林和AdaBoost
  20. MovieLens数据集处理

热门文章

  1. 使用FFmpeg将MP4转换为ts文件
  2. 词干提取算法Porter Stemming Algorithm解读
  3. labview 编程样式_LabVIEW编程样式规则
  4. python求解二元一次方程组代码_如何编程求二元一次方程组的解
  5. 如何在Excel中快速调整列宽
  6. 程序员怎样出版一本技术书
  7. c语言二进制转十进制大小,c语言二进制转换成十进制的方法
  8. RF- BuiltIn_Run Keyword关键字系列
  9. 使用python来搭建一个简易的文件下载环境以及用droopy来实现一个文件上传环境
  10. 美团技术团队书单(通用能力篇)