学习Powershell的时候,基本的语法也了解了一些,但是就是不知道要写些什么?作为一个过来者,和大家一起分享下常见的几个管理任务脚本。

1.更改本地Administrator账号密码

[ADSI]$Admin = "WinNT://计算机名/用户名"
$Admin.SetPassword(P@ssw0rd)

2.重启或关闭计算机

为了能实现对多台计算机操作,将所有要操作计算机名保存在文本文件中。

Get-Content c:\works\server.txt |

Where-Object {Test-Connection $_ -Quiet -Count 2} |
foreach  {

Write-Host "restart $_ "-force "Green"
    Restart-Computer $_ -Force -WhatIf
}

3.重启服务

Get-Content c:\works\server.txt | Where-Object {Test-Connection $_ -Quiet -Count 2} |

Invoke-Command {Restart-Service "wuauserv" -PassThru} –ComputerName $_

4.终止进程

Invoke-Command {ps notepad |kill} -ComputerName v-pc

5.打印磁盘信息

function Get-DiskUtil {
    param([string] $computername = $env:COMPUTERNAME)
    process{
        if($_){
            $computername=$_
            }
        gwmi Win32_LogicalDisk -Filter "drivetype = 3" -ComputerName $computername |
        select @{name="Computername";Expression={$_.systemname}},
        deviceID,
        @{Name="SizeGB";expression={"{0:N2}" -f ($_.size/1GB)}},
        @{Name="FreeGB";expression={"{0:N2}" -f ($_.Freespace/1GB)}},
        @{Name="UsedGB";expression={"{0:N2}" -f (($_.size-$_.freespace)/1GB)}},
        @{Name="Perfree";expression={"{0:P2}" -f ($_.Freespace/$_.size)}}
        }
   
}
$data = gc c:\work\server.txt |where {Test-Connection $_ -Quiet -Count 2} |Get-DiskUtil
$data | Sort-Object computername |ConvertTo-Html -Title "DISKUTIL REPORT" -CssUri "c:\sample.css" |Out-File "c:\diskrepot.html"

6.获取近10条错误系统日志

Get-EventLog -LogName System -Newest 10 -EntryType error,warning

Get-EventLog -LogName System -Newest 10 -EntryType error

Get-EventLog -LogName System -Newest 10 -EntryType error | sort source |ft -GroupBy source -Property timewritten,enventid,message

Get-EventLog -logname System -Newest 10 -EntryType error -ComputerName "v-pc1","v-pc2" |sort machinename -Property timewritten,enventid,message

7.文件访问权限

$acl = Get-Acl \\dc\share
$acl.access |where {$_identityrefernce -match "sales"}
Get-Acl \\dc\share |Export-Clixml .\chisales.xml

8.系统启动时间

function Get-Boot {
    param([string]$computername = $env:COMPUTERNAME)
    process{
        if($_){$computername = $_}   
        gwmi Win32_OperatingSystem -ComputerName $computername |
        select @{Name="computername";expression={$_.csname}},
        @{Name="lastboottime";expression={$_.Converttodatetime($_.lastbootuptime)}},
        @{Name="Uptime";expression={(Get-Date) - ($_.Converttodatetime($_.lastbootuptime))}}
        }
}

9.获取系统版本信息

function Get-SP {
    param([string]$computername = $env:COMPUTERNAME)
    process{
        if($_){$computername = $_}
        gwmi Win32_OperatingSystem -ComputerName $computername |
        select  @{Name="computername";expression={$_.csname}},
         @{Name="OperatingSystem";expression={$_.caption}},
         @{Name="SPName";expression={$_.csdversion}},
         @{Name="Version";expression={$_.servicepackmajorversion}}
        }
   
}

10.删除过期文件

http://gallery.technet.microsoft.com/scriptcenter/Remove-old-files-from-053499f9

到以上站点下载此脚本。

Powershell 十个常见任务的更多相关文章

  1. Java学习之道:Java中十个常见的违规编码

    近期,我给Java项目做了一次代码清理工作.经过清理后,我发现一组常见的违规代码(指不规范的代码并不表示代码错误)反复出如今代码中.因此,我把常见的这些违规编码总结成一份列表,分享给大家以帮助Java ...

  2. Java中十个常见的违规编码

    摘要:作者Veera Sundar在清理代码工作时发现一些常见的违规编码,因此,Veera Sundar把针对常见的一些违规编码总结成一份列表,以便帮助Java爱好者提高代码的质量和可维护性. 最近, ...

  3. 十个常见的Java异常出现原因

    异常是 Java 程序中经常遇到的问题,我想每一个 Java 程序员都讨厌异常,一 个异常就是一个 BUG,就要花很多时间来定位异常问题. 1.NullPointerException 空指针异常,操 ...

  4. Python三十个常见的脚本汇总

    1.冒泡排序     2.计算x的n次方的方法     这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发.爬虫.数据分析.数据可视化.机器学习等.送给正在 ...

  5. 2.PowerShell概述

    PowerShell PowerShell命令窗一般随系统带着,运行->输入:powershell,即可打开命令窗口. 命令 Powershell有诸多命令,兼容cmd命令 语法和命令 在此我推 ...

  6. sass教程汇总

    Sass @at-root http://www.w3cplus.com/preprocessor/Sass-3-3-new-feature-at-root-bem.html Sass中连体符(&am ...

  7. Sass介绍及入门教程

    Sass是什么? Sass是"Syntactically Awesome StyleSheets"的简称.那么他是什么?其实没有必要太过于纠结,只要知道他是“CSS预处理器”中的一 ...

  8. 《Linux就该这么学》第十八天课程

    1.使用MariaDB数据库管理系统 今天没什么笔记,就不发了.想深入学习的可以前往原创地址:https://www.linuxprobe.com/chapter-18.html 图18-1 Mari ...

  9. Sass带来的变革_sass, scss 教程_w3cplus - Google Chrome

    Sass带来的变革 作者:大漠 日期:2014-11-17 点击:5291 sass scss 接触Sass差不多有一个年头了,在这一年来的时间中,也花了不少心思在Sass的学习上.同时也让自己喜欢上 ...

随机推荐

  1. springMVC中 request请求数据绑定到Controller入参 过程剖析

    前言:Controller方法的参数类型可以是基本类型,也可以是封装后的普通Java类型.若这个普通Java类型没有声明任何注解,则意味着它的每一个属性都需要到Request中去查找对应的请求参数.众 ...

  2. webkit 模拟点击 winform

    刚在园子里看到有博主将WebBowser控件替换为Chrome内核(),链接http://www.cnblogs.com/gdyblog/p/WebKitBrowser.html 于是我想既然实现了替 ...

  3. django学习记录

    1.参考资料问题: 现在django发布了1.11版本,离线文档下载引擎地址 文档下载地址 在线文档:https://docs.djangoproject.com/en/1.10/intro/tuto ...

  4. 获取youku视频下载链接(wireshark抓包分析)

    随便说两句 前两天写了一个python脚本,试图以分析网页源码的方式得到优酷视频的下载地址,结果只得到视频的纯播放地址,下载纯播放地址得到的文件也无法正常播放视频. 这里共享一下播放地址得到的方法(想 ...

  5. Microsoft Visual Studio 工程属性表props/vsprops创建与使用

    props/vsprops:工程属性表文件(project property sheet) 后者为vs2008的,前者为vs2010及以后版本的,其主要包含工程属性配置相关,可以单独提取出来供不同工程 ...

  6. 在Mac中像Windows一样查看Tomcat控制台信息

    在Windows系统中,通过startup.bat启动Tomcat之后会打开一个控制台,输出日志信息,在系统调试过程中,也会随时输入日志或错误信息,对开发很有帮助. 在Mac中,通过startup.s ...

  7. string,stringbuilder,stringbuffer用法

    总结:1.如果要操作少量的数据用 = String   ==================================>字符串常量2.单线程操作字符串缓冲区 下操作大量数据 = Strin ...

  8. 【web maven】新建的项目 controller也有,从前台跳转后台 无法找到对应的controller

    碰上很 愣的问题: 使用maven搭建项目完成,项目页面写好,实体.Dao.Service.Controller都有了,但是指定Controller中的某个方法中一直不能从前台进入后台 原因: 没有w ...

  9. 1.4 jQuery方法,JSON介绍

    jQuery方法: jQuery添加元素: append()方法: $("元素").append("追加内容"); prepend()方法: $("元 ...

  10. hibernate框架int和Integer类型区别

    hibernate 框架在定义实体时,int类型最好定义为Inttger类型,因为在注入时int是值类型不允许为空.