PowerShell 调试器

在开始运行处,输入powershell ISE回车即可

PowerShell 与操作系统版本

powershell在windows server 2008上自带,但最好在版本号为6.0.7600上使用,6.0.6001版本的server 2008自带的powershell缺少很多常用的功能

PowerShell 比较运算符

-eq          等于                   10 -eq 10                true
-ne 不等于 10 -ne 10 false
-gt 大于 10 -gt 10 false
-ge 大于 10 -ge 10 true
或等于
-lt 小于 10 -lt 10 false
-le 小于或等于 10 -le 10 true

PowerShell中命令的返回

$java_process=get-process java

以上命令会将进程中所有的java进程以System.Diagnostics.Process对象数组的方式返回,那么$java_process这个变量即为一个对象数组

PowerShell 数组遍历

$java_process=get-process java
foreach($p in $java_process){
echo $p.Id
}

以上命令的结果是打印出系统进程中所有java进程的进程id

PowerShell 注释

powershell以"#"号为单行注释,例如:

# 定义i为0
$i = 0

多行注释如下

<#
用于多行注释
#>
$i = 0

PowerShell 读取文件并返回以行为数组元素的数组

# 读取C:\1.txt内容并输出到D:\1.txt,其中|管道符后的%代表遍历读取命令后的数组,$_代表每次遍历的值
Get-Content "C:\1.txt"|%{
echo $_>>D:\1.txt
}

PowerShell 查找数组中最大最小值

$list = 1,4,3,1,3,12,990

$result = $list | Measure-Object -Minimum -Maximum
$result.Minimum
$result.Maximum

还可以对日期类型的查找,但实验证明,只有高版本的powershell才支持日期类型

$list = Get-ChildItem -Path C:\windows 

$result = $list | Measure-Object -Property LastWriteTime -Minimum -Maximum
$result.Minimum
$result.Maximum

PowerShell创建文件文件夹

new-item -path C:\ -name backup -type directory #创建目录
new-item -path C:\ -name backup.txt -type file #创建文件

PowerShell无声强行删除文件夹以及其下的子项

remove-item C:\data_old -force -recurse

PowerShell创建windows任务计划

#创建一个任务计划管理对象并获取任务计划根目录
$service = new-object -com("Schedule.Service")
$service.connect($env:COMPUTERNAME)
$RootFolder = $service.getfolder("\") #创建task对象
$Task = $service.NewTask(0)
#给task起个名字
$RegInfo = $Task.RegistrationInfo
$Reginfo.Description = "test" #设置任务不要立刻运行
$Settings = $Task.Settings
$Settings.StartWhenAvailable = $false #为任务创建触发器(这里多说一句,要想让powershell做些管理windows的工作,就必须去读msdn的文档,对于我这种java党,学起来真费劲)
#参考资料:http://msdn.microsoft.com/en-us/library/windows/desktop/aa383898(v=vs.85).aspx
$Triggers = $Task.Triggers
$Trigger = $Triggers.Create(3) #3指的是周任务 #为任务设置有效期,以及每周 周几 几点 运行
#下面的例子是有效期为2014-12-9 4点到2130-8-6 12点为有效期,每周6的4点开始运行任务
$Starttime = "2014-12-09T04:00:00"
$Endtime = "2130-08-06T12:00:00-05:00"
$Trigger.StartBoundary = $Starttime
$Trigger.EndBoundary = $Endtime
$Trigger.DaysOfWeek=64 #64代表周6,具体http://msdn.microsoft.com/en-us/library/windows/desktop/aa384024(v=vs.85).aspx
$Trigger.WeeksInterval=1#设置为1代表每周 #为任务创建运行程序
#以下例子会在触发运行后,运行powershell -ExecutionPolicy RemoteSigned -noprofile -noninteractive -file backup.ps1这条命令
$Action = $Task.Actions.Create(0)
$Action.Path = "powershell" #要运行的程序,可以写路径
$Action.Arguments ="-ExecutionPolicy RemoteSigned -noprofile -noninteractive -file backup.ps1" #powershell运行时的参数
$Action.WorkingDirectory = "C:\"#有些程序需要指定运行环境目录,例如这个例子中需要用powershell运行backup.ps1脚本,那么就要指定运行环境为C:下,否则会找不到 #将任务写入
$Rootfolder.RegisterTaskDefinition("起个名字", $Task,6,"你的用户名","你的密码",6)

PowerShell逻辑运算

Powershell 对象判空

if(get-process java){
#... ...
}

PowerShell 拷贝

# 拷贝当前目录下所有文件到temp文件夹下,且不拷贝以SHQS开头和文件名中含有1的文件
Copy-Item *.* .\temp -Exclude "SHQS*","*1*"

powershell学习的更多相关文章

  1. windows powershell学习

    PowerShell,从名字可以知道,他首先是一个shell,shell的意思就是和Linux的bash等一样.和原来的cmd一样就是在里边敲命令(可执行文件)使用: 而Power就意味他是一个功能强 ...

  2. PowerShell学习记录

    一.简介——连接 Powershell 是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境.你可以把它看成是命令行提示符cmd.exe的扩充,不对,应当是颠覆. powershe ...

  3. Powershell 学习笔记【持续更新】

    1. 判断一个对象是不是空可以用 $null来比较 2. 判断一个字符串是不是空的: [string]::IsNullOrEmpty(...) 3. 在powershell中把结果输出为一个CSV格式 ...

  4. Powershell学习之道-文件夹共享及磁盘映射

    导读 在Linux环境下,我们很轻易就能得心应手地通过命令操作一切事物,在Windows下,Powershell也算是后起之秀,提供大量的cmdlet以及c#的横向拓展.下面将由小编带领大家通过Pow ...

  5. [Windows Powershell]-学习笔记(6)

    Powershell环境变量 传统的控制台一般没有象Powershell这么高级的变量系统.它们都是依赖于机器本身的环境变量,进行操作 .环境变量对于powershell显得很重要,因为它涵盖了许多操 ...

  6. [Windows Powershell]-学习笔记(5)

    Powershell自动化变量 Powershell 自动化变量 是那些一旦打开Powershell就会自动加载的变量,或者说是运行是变量. 这些变量一般存放的内容包括 用户信息:例如用户的根目录$h ...

  7. [Windows Powershell]-学习笔记(4)

    Powershell 定义变量 在powershell中变量名均是以美元符"$"开始,剩余字符可以是数字.字母.下划线的任意字符,并且powershell变量名大小写不敏感($a和 ...

  8. [Windows Powershell]-学习笔记(3)

    Powershell 通过函数扩展别名 在powershell中设置别名的确方便快捷,但是在设置别名的过程中并设置参数的相关信息,尽管别名会自动识别参数,但是如何把经常使用的参数默认设定在别名里面呢? ...

  9. [Windows Powershell]-学习笔记(2)

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

随机推荐

  1. svn 相关

    // svn相关内容,windows下的可以根据网上的,安装客户端和服务器端安装成功后,可以在服务器端中的 Repositories中建立相关的项目库文件夹,右键相应的文件夹可以复制相关的 url,一 ...

  2. 目前IT行业的几个大方向

    我简单总结了一下目前it行业的8大方向:   1.嵌入式开发 传统的arm linux开发.新兴的智能硬件.物联网等技术的发展,都让整个方向成为热门领域.   2.游戏开发 cocos2d-x.uni ...

  3. PHP之session_start()详解

    1.session的工作原理 (1)首先使用session_start()函数进行初始换 (2)当执行PHP脚本时,通过使用$_SESSION超全局变量注册session变量. (3)当PHP脚本执行 ...

  4. SQL学习_查询重复数据和连接多个表数据的方法

    进行数据库测试时需要根据不同场景查询数据,以便验证发现的问题是否为脏数据引起的.记录一下最近常用的查询方法: 1. 查询表中重复数据(id不同,多个字段值相同) select P1.* from pr ...

  5. Html学习_简易个人网页制作

    应用学到的内容,制作简易个人网页 <!DOCTYPE html> <html> <head> <title>Jane.liu</title> ...

  6. 【经验】angularjs 实现带查找筛选功能的select下拉框

    一.背景 对于select的下拉列表,像国家选择这样的功能,全世界那么多国家,一直拉滚动条多辛苦,眼睛也要盯着找,累!so,为优化用户体验,带查找功能的下拉框是非常非常有必要的.都知道jquery里有 ...

  7. java web第一个Servlet程序

    Servlet 简介 . Java Servlet是和平台无关的服务器端组件,它运行在Serlet容器中.Servlet容器负责Servlet和客户的通信以及调用Servlet的方法,Servlet和 ...

  8. PHP之关闭网页错误提示

    关闭PHP错误脚本提示是程序上线了必须做的一件事情,就是不管程序怎么报错我们都不能让错误日志在服务器上给大家看到,下面我来总结两种关闭PHP错误脚本提示的具体方法 最简单的办法就是直接在php程序代码 ...

  9. SecureCRT 中文乱码问题

    1.修改远程linux机器的配置 [root@rhel ~]#vi /etc/sysconfig/i18n 把LANG改成支持UTF-8的字符集 如: LANG=”zh_CN.UTF-8″ 或者是 L ...

  10. asp.net(c#)有关 Session 操作的几个误区

    1. this.Session["username"] = null  HttpSessionState 内部使 用 NameObjectCollection 类型的集合对象来存储 ...