PowerShell的使用
来源:互联网 发布:步步惊情39网络完整版 编辑:程序博客网 时间:2024/06/15 22:39
PowerShell的使用
简介:
1.前身:Monad
2.功能:简单的说,Powershell是cmd的超集,换句话说,cmd能做的事情,Powershell都能做,但是Powershell还能额外做许多cmd不能做的活。
cmd是和powershell都可以做命令行交互,批处理和powershell脚本功能也相当
Windows PowerShell 是专为系统管理员设计的新 Windows 命令行shell。Windows PowerShell包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用。
与接受和返回文本的大多数 shell不同,Windows PowerShell是在 .NET Framework公共语言运行时 (CLR)和 .NET Framework的基础上构建的,它接受和返回 .NET Framework对象。环境中的这一根本更改带来了管理和配置 Windows的全新工具和方法。
普通使用功能:
1. 数学计算
<1>PS> (39+79-51)*497/28
1189.25
<2>$now=Get-Date
$day=[datetime]'2-14'
if($now -lt $day ){
$day.Subtract($now).TotalMinutes
}
else{
$day.AddYears(1).Subtract($now).TotalMinutes
}
<3>PS C:/> (2+2)*3/7> c:/foo.txt
PS C:/> type c:/foo.txt
1.71428571428571
这里将输入的结果存放在临时文件中,再用type命令将文件结果取出。
<4>PS C:/> $n= (2+2)*3
PS C:/> $n
12
PS C:/> $n / 7
1.71428571428571
这里将运行的结果赋值给一个变量,在后续的运行中仍可以使用
<5>PS> 3gb-gt 3145726kb
True
2. 打印语句
PS C:/> "hello world!"
hello world!
3. 查看当前运行程序
<1>Get-Service spooler
查看打印机服务有没有启动
(Get-Process iexplore ).count
常用命令:
入门级别
1. 像文件系统那样操作Windows Registry——cd hkcu:
2. 在文件里递回地搜索某个字符串——dir –r | select string "searchforthis"
3. 使用内存找到五个进程——ps | sort –p ws | select –last 5
4. 循环(停止,然后重启)一个服务,如DHCP——Restart-Service DHCP
5. 在文件夹里列出所有条目——Get-ChildItem – Force
6. 递归一系列的目录或文件夹——Get-ChildItem –Force c:\directory –Recurse
7. 在目录里移除所有文件而不需要单个移除——Remove-Item C:\tobedeleted –Recurse
8. 重启当前计算机——(Get-WmiObject -Class Win32_OperatingSystem -ComputerName .).Win32Shutdown(2)
收集信息
9. 获取计算机组成或模型信息——Get-WmiObject -Class Win32_ComputerSystem
10. 获取当前计算机的BIOS信息——Get-WmiObject -Class Win32_BIOS -ComputerName .
11. 列出所安装的修复程序(如QFE或Windows Update文件)——Get-WmiObject -Class Win32_QuickFixEngineering -ComputerName .
12. 获取当前登录计算机的用户的用户名—— Get-WmiObject -Class Win32_ComputerSystem -Property UserName -ComputerName .
13. 获取当前计算机所安装的应用的名字——Get-WmiObject -Class Win32_Product -ComputerName . | Format-Wide -Column 1
14. 获取分配给当前计算机的IP地址——Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Format-Table -Property IPAddress
15. 获取当前机器详细的IP配置报道——Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Select-Object -Property [a-z]* -ExcludeProperty IPX*,WINS*
16. 找到当前计算机上使用DHCP启用的网络卡——Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "DHCPEnabled=true" -ComputerName .
17. 在当前计算机上的所有网络适配器上启用DHCP——Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=true -ComputerName . | ForEach-Object -Process {$_.EnableDHCP()}
软件管理
18. 在远程计算机上安装MSI包——(Get-WMIObject -ComputerName TARGETMACHINE -List | Where-Object -FilterScript {$_.Name -eq "Win32_Product"}).Install(\\MACHINEWHEREMSIRESIDES\path\package.msi)
19. 使用基于MSI的应用升级包升级所安装的应用——(Get-WmiObject -Class Win32_Product -ComputerName . -Filter "Name='name_of_app_to_be_upgraded'").Upgrade(\\MACHINEWHEREMSIRESIDES\path\upgrade_package.msi)
20. 从当前计算机移除MSI包——(Get-WmiObject -Class Win32_Product -Filter "Name='product_to_remove'" -ComputerName . ).Uninstall()
机器管理
21. 一分钟后远程关闭另一台机器——Start-Sleep 60; Restart-Computer –Force –ComputerName TARGETMACHINE
22. 添加打印机——(New-Object -ComObject WScript.Network).AddWindowsPrinterConnection(\\printerserver\hplaser3)
23. 移除打印机——(New-Object -ComObject WScript.Network).RemovePrinterConnection("\\printerserver\hplaser3 ")
24. 进入PowerShell会话——invoke-command -computername machine1, machine2 -filepath c:\Script\script.ps1
编写脚本:
其他一些用法:
1.查询IP地址,cmd需要用ipconfig/all,在power shell则用Get-NetIPConfiguration -detailed
2.查看网卡信息: Get-NetAdapter、Get-NetAdapterStatistics、Get-NetIPAddress
3.配置IP地址。Cmd下可用sconfig或者netsh interface,在power shell则用New-NetIPAddress
4.配置DNS:Set-DNSClietServerAddress。Cmd下可以用sconfig或者netsh interface
5.网络查错:
Cmd下首先是要ping或者tracert或者telnet来判断路由或者端口是否打开。如
ping 10.1.1.1 tracert www.baidu.com 或者telnet 8.8.8.8.53
而在power shell上面一个命令就可以实现
<1>ping 远程服务器
Test-NetConnectionwww.baidu.com
<2>telnet端口
Test-NetConnection8.8.8.8 -Port 53
<3>跟踪路径
Test-NetConnection8.8.8.8 -TraceRoute
6.重启服务:restart-service
7.获取当前服务:get-service|out-gridvie(所有服务)
也可以在win+R中输入services.msc,但在这里是全部服务都显示,不能筛选
而上面的则可以筛选如显示正在运行的服务(输入Get-Service | Where Status -eq "Running" | Out-GridView也可)或者所有停止的服务(输入Get-Service | Where Status -eq "Stopped" | Out-GridView也可),甚至可以按照关键字筛选
8.停止、开始及配置服务
stop-service start-service set-service
- Powershell的使用
- powershell的安装使用
- PowerShell的使用
- PowerShell使用Vim的方法
- [PowerShell教程][10]PowerShell中的HashTable的使用
- 使用powershell
- Windows Server 2008中PowerShell的使用
- [Windows PowerShell10]-PowerShell管道的使用
- 使用PowerShell更新RootFolder的Properties属性
- 使用PowerShell发送带附件的Email
- 如何使用Powershell的Get-help
- 使用Powershell解析Json的算法实现
- [原创][PowerShell教程][07]PowerShell中Write族cmdlet的介绍和使用
- 数据库管理——Powershell——使用Powershell脚本找出消耗最多磁盘空间的文件
- [PowerShell教程][09]PowerShell中的数组使用
- 使用PowerShell排错----PowerShell入门
- 使用PowerShell操作快捷方式
- PowerShell 使用入门
- 《七点三刻》039期 再见金童!卡卡退役/第二架C919首飞成功/省考陆续启动…
- 11.24
- 多个linux设置ssh免密登陆和各个系统安装zookeeper
- 旧金山启用安保机器人巡逻街道引发争议
- LeetCode-4-Median of Two Sorted Arrays(C语言实现)
- PowerShell的使用
- 智能芯片创人:AI或助人类实现心灵感应交流
- 公共参数拦截器
- 人类离用真正的大脑进行人工智能研究还有多远?
- 循环
- 面向对象2-List list中的这个list到底是不是一个List
- 搜索展示,加入购物车,但不显示购物车页面
- git / git bash 下载与安装
- 搜集到的前端主流框架