Powershell(3)
Powershell
可以使用powershell管理的服务
- share point, exchange, lync, windows azure, window server, system center, vmware, sql server, visual studio, 硬件
- .NET Framework是一个量身为windows定制的框架, 一款API, 解决了很多问题, .NET Framework解决了C/C++的内存管理, 大部分的程序运行在.NET Framework上, Window Management Frame安装的前提是安装了.NET Framework, 在windows上可以安装多个.NET framework, 这样是为了兼容性考虑, 多装一点好一点, 他是一个编程体系, 简单的讲这就是个类库,有很多游戏或者软件都调用这个类库里的方法
- WinRM(默认不开启, 是协议的实现)
- WMF(Windows Management Framework)可以安装在Linux上
- windows 羡慕Linux的命令行, 但是因为Linux的设计里面是文件, 而windows是API, 所以采用了powershell这个平台, ps的引擎一直都是没有变的
- system Int 32
- system string
- system boolean
- system collection hashtable
命令
- get-service
- format-volume
- 服务: bit, bits一般不怎么用
- update-help -UIculture zh-CN
- set, new, add, remove等涉及到修改类的需要指定-Name
- 如果get-help没有更新, 也不影响卡语法
- enable-bitlocker: 对driver加密
- 输出的为对象, print对象的string
- get-member: 获取对象成员 --> get-service | get-member --> 通过管道返回service对象的属性(属性和方法, 类似于python中的dir(obj))
- 输出的列明为属性名, 输出的不一定是该对象所有的属性, 而是一些可以输出的属性, 如果要全部, get-service | select-object *, 简短的; 或者 get-service | get-member 复杂的
- 输出的都是一行一行的表格, 其实他们是一个system.array对象, 输出的是该对象中的对象的str信息, 学过java和python懂得
- 接受管道传来的对象是命令的参数, 通过get-help查看paramter, 查看是否接受管道, 还有接受管道的优先级别
命令使用案例
$var = "1" --> $var.gettype().fullname
[system.int32]$a = "1" --> 提供强制转型
$services = get-services --> \(services | foreach-object {\)_.name}
foreach-object必须在管道后面, foreach必须另起一行
foreach ($item in $services) {
$item.name
$item.start()
$item.stop()
}
for循环
for ($i = 0; $i -le 100; $i++) {
$i
}
定义数组$arr = @('a', 'b', 'c')
数组: .count[元素个数], $arr[0]
$host.ui.writedebugline('error')
$error为内置的全局变量, 是一个array, 存放异常对象
$env:path --> 显示环境变量的值, $env:pathext等等
write-host, write-output, write --> echo
'符是Linux中\的作用
$args为参数变量
$erroractionperformance --> 命令错误的动作
invokecommand -ComputerName name -ScriptBlock {...}--> 对远程计算机执行命令, 类似于rpc, 但是在win上是WinRM, 将scriptblock内部东西推送到执行
反序列化对象没有close和dispose等方法
system.object是所有的类的父类, 有gettype和tostring方法
为了深入了解序列化与反序列化的案例
enable-psremoting -force
set-wsmanquickconnfig -force
invoke-command -computername win2012 scriptblock {get-service -name alg} | get-member
那么对于get-member命令是在本地执行的, 而get-service -name alg是推送到远程主机执行的, 远程执行完毕之后将得到的对象序列化返回给本地主机, 本地主机将该序列化对象进行反序列化转为反序列化
对象, 此对象是没有close(), dispose()等方法的
invoke-command -computername win2012 scriptblock {get-service -name alg | get-member}
服务
- alg: application layer gateway service
- bit, bits, winrm
远程连接(在windows server 2012 r2默认已经配置好了)
- HTTP/HTTPS
- 侦听器
- 开启服务 set-msmanquickconfig
- 注册侦听器 http5985 https5986
如何开启(powershell管理远程, 客户端与服务端):
enable-psremoting -force
set-wsmanquickconfig -force
- 本地信任列表
提供程序(这里面的项看起来是文件, 其实不是)
- get-childitem wsman: --> 与远程连接有关, 使用set-item trusthost -value 192.168.1.7 添加信任
- cert
- hklm
- hkcu
- IIS
Powershell(3)的更多相关文章
- 在PowerShell中使用curl(Invoke-WebRequest)
前言 习惯了windows的界面模式就很难转去命令行,甚至以命令行发家的git也涌现出各种界面tool.然而命令行真的会比界面快的多,如果你是一个码农. situation:接到需求分析bug,需要访 ...
- Windows 7上执行Cake 报错原因是Powershell 版本问题
在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的 ...
- <译>通过PowerShell工具跨多台服务器执行SQL脚本
有时候,当我们并没有合适的第三方工具(大部分需要付费)去管理多台数据库服务器,那么如何做最省力.省心呢?!Powershell一个强大的工具,可以很方便帮到我们处理日常的数据库维护工作 .简单的几步搞 ...
- 利用PowerShell复制SQLServer账户的所有权限
问题 对于DBA或者其他运维人员来说授权一个账户的相同权限给另一个账户是一个很普通的任务.但是随着服务器.数据库.应用.使用人员地增加就变得很枯燥乏味又耗时费力的工作.那么有什么容易的办法来实现这个任 ...
- PowerShell 数组以及XML操作
PowerShell基础 PowerShell数组操作 将字符串拆分成数据的操作 cls #原始字符串 $str = "abc,def,ghi,mon" #数据定义 #$StrAr ...
- linux下mono,powershell安装教程
1简介 简单来说pash就是bash+powershell 2官网 https://github.com/Pash-Project/Pash 3下载fedora20---lxde桌面---32位版. ...
- Windows下PowerShell监控Keepalived
一.背景 某数据库服务器为CentOS,想要监控Keepalived的VIP是否有问题,通过邮件进行报警,但这台机器不能上外网,现在只能在Windows下通过PowerShell来完成发邮件预警. 二 ...
- 使用PowerShell收集多台服务器的性能计数器
写在前面 当管理多台Windows Server服务器时(无论是DB.AD.WEB以及其他的应用服务器),当出现性能或其他问题后,参阅性能计数器都是一个非常好的维度从而推测出问题可能出现的原因 ...
- 野路子出身PowerShell 文件操作实用功能
本文出处:http://www.cnblogs.com/wy123/p/6129498.html 因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职,索性就网上各种 ...
- 使用PowerShell 监控运行时间和连接情况
概念 Powershell 是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境.你可以把它看成是命令行提示符cmd.exe的扩充,不对,应当是颠覆. powershell需要.N ...
随机推荐
- UWP&WP8.1 中文网页字符乱码 字符乱码 UTF-8转GBK 解决方法
UWP 方法 async void Download() { /*新建HttpClient*/ HttpClient web_ = new HttpClient(); /*使用HttpClient的G ...
- Quick Reference Card Urls For Web Developer
C# C# Cheatsheet & Notes Coding Guidelines for C# 3.0, 4.0, 5.0 Core C# and .NET Quick Reference ...
- 2018沈阳网赛F--上下界网络流
建图: 首先加一个源点s和汇点t,分别连接在二分图的左边和右边,每条弧的上下界为[L, R],二分图左边和右边之间连弧上下界为[0,1],其实就相当于连弧为1. 然后问题就转换为:有源汇最大流. 继续 ...
- ORACLE 中dbms_stats的使用
dbms_stats能良好地估计统计数据(尤其是针对较大的分区表),并能获得更好的统计结果,最终制定出速度更快的SQL执行计划. exec dbms_stats.gather_schema_stats ...
- 【BZOJ2438】[中山市选]杀人游戏 Tarjan+概率
[中山市选]杀人游戏 Tarjan+概率 题目描述 一位冷血的杀手潜入\(Na\)-\(wiat\),并假装成平民.警察希望能在\(N\)个人里面,查出谁是杀手.警察能够对每一个人进行查证,假如查 ...
- 当我们谈论CloudTable时究竟在谈论什么?
表格存储服务(CloudTable Service,简称CloudTable)是基于Apache HBase提供的分布式.可伸缩.全托管的毫秒级NoSQL数据存储服务.它提供了毫秒级的随机读写能力,适 ...
- cmake相关问题
一.cmake升级 在ubuntu 16.04下面把cmake 由 3.5.1升级到 3.11,具体的流程如下所述. (1) sudo apt-get install build-essential ...
- 19.Longest Substring Without Repeating Characters(长度最长的不重复子串)
Level: Medium 题目描述: Given a string, find the length of the longest substring without repeating cha ...
- 关于dubbo服务的xml配置文件报错的问题——The matching wildcard is strict, but no declaration can be found for element 'dubbo:application'
在配置dubbo服务的过程中,经常会遇到虽然程序能够跑起来,但是配置文件一堆红叉,虽然不影响功能,但是确实很让人恶心. 报错信息如下: 解决方案: 下载一个dubbo.xsd文件(就在dubbo.ja ...
- P3943 星空
传送门 观察题目数据,发现 k ≤ 8 ,可能可以从这里入手解决问题 考虑状态压缩 但是我们每次操作都会让一连串的序列改变,而序列的每个状态都是必须要知道的 很麻烦,所以考虑如何把一段区间表示地简单一 ...