Powershell小技巧之播放WAV声音
要让程序播放WAV声音文件,可以在PS中使用内置的声音类。它支持一个wav格式文件路径同时能让你控制声音的播放频率。
$player = New-Object -TypeName System.Media.SoundPlayer $player.SoundLocation = 'C:\Windows\Media\chimes.wav' $player.Load() $player.PlayLooping()
一旦你的脚本开始执行,你可以这样停止播放:
$player.Stop()
如果你想要在你的脚本空间定义一段声音,请将声音文件放置在脚本的同一个目录,同时使用$PSScriptRoot引用当前脚本文件的位置。
这个例子将播放你脚本同一个目录下的mySound.wav文件:
$player = New-Object -TypeName System.Media.SoundPlayer $player.SoundLocation = "$PSScriptRoot\mySound.wav" $player.Load() $player.PlayLooping() # do something... Start-Sleep -Seconds 5 $player.Stop()
注意 $PSScriptRoot 只支持PS3.0及以后版本。当然它也需要你的脚本保存为一个文件。
支持PS3.0以后版本
相关推荐
-
Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数
这里演示如何利用PowerShell将一段Javascript函数字符串交给Jint引擎去执行. 执行Javascript函数 .Net版的Javascript解释器 可以从Git上获取Jint的代码,也可以从nuget上下载Jint的程序集. Jint是一个面向.Net的Javascript解释器.Jint不会把Javascript编译成.Net字节码,所以它非常适用于脚本小且运行起来速度快的工程,或者运行在不同平台上的脚本. PowerShell调用 拿到Dll根据-Path参数直接使用Ad
-
PowerShell小技巧之启动远程桌面连接
以Windows Server 2012 R2为例,其实非常简单.先启用远程连接: (gwmi -class win32_terminalservicesetting -namespace "root\cimv2\terminalservices").setallowtsconnections(1) 然后再启用几条防火墙规则即可,用PowerShell(需要管理员权限)更显其威武: PS> Get-NetFirewallRule -Name RemoteDesktop* | se
-
Powershell小技巧之通过EventLog查看近期电脑开机和关机时间
机器开机和关机时写在EventLog中的第一条日志和最后一条日志分别为:6005和6006. TimeCreated Id LevelDisplayName Message ----------- -- ---------------- ------- 8/18/2014 9:23:04 AM 6005 Information The Event log service was started. 8/15/2014 7:03:48 PM 6006 Information The Event lo
-
Powershell小技巧之使用Get-ChildItem得到指定扩展名文件
当你使用Get-ChildItem获取输出文件列表时,你可能会发现即使用了-Filter参数也会比你预期的结果要多得多. 这里有一个例子,它不仅返回.ps1扩展名文件同时也返回.ps1xml扩展名文件: Get-ChildItem -Path C:\windows -Recurse -ErrorAction SilentlyContinue -Filter *.ps1 为了限制结果集只是你设置后的扩展名,可以添加一个命令的过滤器,以完善的结果: Get-ChildItem -Path C:\wi
-
PowerShell小技巧之配置机器的静态IP
家用电脑安装了一台虚拟机,默认没有配置网络,本来是想利用PowerShell启用无线网络,可是安装过程需要在线获取一些文件,所以失败,无奈只能配置静态IP地址了,参考了Ed Wilson的:Use PowerShell to Configure Static IP and DNS Settings $wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'" $wmi.Enable
-
Powershell小技巧之播放WAV声音
要让程序播放WAV声音文件,可以在PS中使用内置的声音类.它支持一个wav格式文件路径同时能让你控制声音的播放频率. $player = New-Object -TypeName System.Media.SoundPlayer $player.SoundLocation = 'C:\Windows\Media\chimes.wav' $player.Load() $player.PlayLooping() 一旦你的脚本开始执行,你可以这样停止播放: $player.Stop() 如果你想要在你
-
Powershell小技巧之获取MAC地址
在Powershell中获取MAC地址不是很难.这里就有一种方法: 复制代码 代码如下: PS> getmac /FO CSV | ConvertFrom-Csv Physical Address Transport Name ---------------- -------------- 5C-51-4F-6
-
Powershell小技巧之获取当前的时间并转换为时辰
午时三刻已到,行刑,刀下留人,现在到底是不是午时,能否让PowerShell告诉我呢? 好的, 没问题.从晚上23点到凌晨2点之间属于子时,每两个小时一个时辰,依次为"子丑寅卯辰巳午未申酉戌亥". 函数获取当前时辰 用PowerShell脚本实现: function Get-ChinaTimeAlias { param( [ValidateRange(0,23)] [int]$Hour = (get-date).Hour ) $timeAliasArray='子丑寅卯辰巳午未申酉戌亥'
-
Powershell小技巧之查询AD用户
假若你登录到了一个AD中你可以轻松的查询AD目录.在先前的技巧中我们阐述了一个基本脚本.这里有一个可以自定义根目录的扩展方法(设置你的查询点),它支持同步查询(而不是递归到一个容器). 它同时也阐述了怎么从一个活动目录查找结果再将其转化成用户对象: $SAMAccountName = 'tobias' $SearchRoot = 'LDAP://OU=customer,DC=company,DC=com' $SearchScope = 'OneLevel' $ldap = "(&(obj
-
PowerShell小技巧之查找获取注册表路径
在先前的技巧中我们说明如何将一个PS内置的路径格式转化成一个实际路径.这里介绍了一个例子.这段代码递归从HKEY_CURRENT_USER获取所有包含"powershell"词缀的键(简单的替换查询词缀将能获得你想要查询的任何东西) 复制代码 代码如下: Get-ChildItem -Path HKCU:\ -Include *PowerShell* -Recurse -ErrorAction SilentlyContinue|Select-Object -Property *Path
-
PowerShell小技巧实现IE Web自动化
Windows 系统自带的Internet Explore +加上PowerShell 即可搞定. 今天就分享下这几天自己写的几个小函数,欢迎拍砖: # # 打开IE窗口 # function New-IEWindow { param( [string]$Url, [switch]$Visible, [switch]$FullScreen ) $Global:IEHost = new-object -com "InternetExplorer.Application" $Global:
-
PowerShell小技巧之观察UNC路径
许多命令能支持UNC路径,但是UNC路径在脚本中看起来很奇怪.看看下面代码: PS> Test-Path -Path \\127.0.0.1\c$ True 它返回了真,证明UNC路径存在.接着改变当前的路径指向一个非文件系统路径接着测试: PS> cd hkcu:\ PS> Test-Path -Path \\127.0.0.1\c$ False 一样的路径但现在却获得了失败.这是因为UNC路径没有包含盘符,而PS需要根据盘符去分配当前合适位置.如果当前路径没有包含在磁盘路径下,Pow
-
PowerShell小技巧之读取Windows产品密钥
之前大多数人可能用过VBS读取Windows产品密钥的VBS脚本,VBS脚本通常都比较隐晦.难懂,今天忙里偷闲,随手写了一个用于读取Windows产品密钥的PowerShell脚本. 代码如下: 复制代码 代码如下: =====文件名:Get-WindowsProductKey.ps1===== function Get-WindowsProductKey([string]$computer) { $comments =@' author:fuhj(powershell#live.cn ,htt
-
PowerShell小技巧之使用Hotmail账号发送邮件
在低版本的PowerShell上发送邮件可以借助.NET的system.net.mail.smtpclient类.在高版本的PowerShell中可以借助现成的命令:Send-MailMessage 我在尝试使用Hotmail时,遇到了一个错误: Send-MailMessage : The SMTP server requires a secure connection or the client was not authenticated. The server response was:
随机推荐
- php简单实现MVC
- SWT(JFace)体验之StyledText类
- 简单实现JS上传图片预览功能
- FcScript V1.0 使用说明帮助文件
- Vue-cli proxyTable 解决开发环境的跨域问题详解
- javascript下阻止表单重复提交、防刷新、防后退
- java中数组的相关知识小结(推荐)
- dz asp.net论坛中函数--根据Url获得源文件内容
- php include加载文件两种方式效率比较
- php cookie名使用点号(句号)会被转换
- js二级地域选择的实现方法
- JS模拟酷狗音乐播放器收缩折叠关闭效果代码
- jq stop()和:is(:animated)的用法及区别(详解)
- IE自动弹出电影页面等的清除教程
- 利用C#远程存取Access数据库
- 基于jquery的分页控件(C#)
- 浅谈Node 调试工具入门教程
- PHP之认识(二)关于Traits的用法详解
- Vue使用mixin分发组件的可复用功能
- Unity实现轮盘方式的按钮滚动效果