Powershell小技巧之找出脚本中的错误_PowerShell

找出脚本之中的语法错误从来就不是轻松的事情,但是可以这样去筛选:

filter Test-SyntaxError
{
  $text = Get-Content -Path $_.FullName
  if ($text.Length -gt 0)
  {
   $err = $null
   $null = [System.Management.Automation.PSParser]::Tokenize($text, [ref] $err)
   if ($err) { $_ }
  }
}

这个脚本中,你可以快速扫描一个目录或整个电脑中的PS文件找出他们中的语法错误。

下面例子将找寻用户目录下所有PS脚本的语法错误:

复制代码 代码如下:

PS> dir $home -Filter *.ps1 -Recurse -Exclude *.ps1xml | Test-SyntaxError

支持所有PS版本

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索PowerShell小技巧
powershell 脚本、powershell 执行脚本、powershell脚本实例、powershell脚本编写、运行powershell脚本,以便于您获取更多的相关知识。

时间: 2024-11-05 06:26:00

Powershell小技巧之找出脚本中的错误_PowerShell的相关文章

Powershell小技巧之找出最大最小值_PowerShell

要找出对象的最大最小值,请使用Measure-Object: $list = 1,4,3,1,3,12,990 $result = $list | Measure-Object -Minimum -Maximum $result.Minimum $result.Maximum 它支持多个数据并且还支持不通的数据类型,这里将它小小的修改就能返回WINDOWS目录下最近新创的文件: $list = Get-ChildItem -Path C:\windows $result = $list | Me

JavaScript实现找出字符串中第一个不重复的字符_javascript技巧

此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达. //找出字符串中第一个不重复的字符 // firstUniqueChar("vdctdvc"); --> t function firstUniqueChar(str){ var str = str || "", i = 0, k = "", _char = "", charMap = {}, result = {name: "",i

PowerShell小技巧之从函数中返回多个值_PowerShell

假设一个PS脚本函数需要返回多个值,最好的办法是返回对象并且存储对象独有的属性. 这里有一个不错的方法.它能轻松的返回你想要的多个信息,并将结果分配给多个变量: function Get-MultipleData { Get-Date 'Hello' 1+4 } $date,$text,$result=Get-MultipleData "The date is $date" "The text was $text" "The result is $resu

PowerShell小技巧之获取域名whois信息_PowerShell

Whois 简单来说,就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人.域名注册商.域名注册日期和过期日期等).通过域名Whois服务器查询,可以查询域名归属者联系方式,以及注册和到期时间.通常情况下,whois信息均为真实信息,通过whois信息可以找到域名注册人的很多真实信息,像电话,邮箱,NS记录,是对网站进行社工非常好的信息来源,对于安全从业人员来说,快速获取whois信息,能够帮助自己掌握目标网站的很多有用信息. 而whois信息通常是保存在各级域名注册

Powershell小技巧之查询AD用户_PowerShell

假若你登录到了一个AD中你可以轻松的查询AD目录.在先前的技巧中我们阐述了一个基本脚本.这里有一个可以自定义根目录的扩展方法(设置你的查询点),它支持同步查询(而不是递归到一个容器). 它同时也阐述了怎么从一个活动目录查找结果再将其转化成用户对象: $SAMAccountName = 'tobias' $SearchRoot = 'LDAP://OU=customer,DC=company,DC=com' $SearchScope = 'OneLevel' $ldap = "(&(obj

C语言实现找出二叉树中某个值的所有路径的方法_C 语言

本文实例讲述了C语言实现找出二叉树中某个值的所有路径的方法,是非常常用的一个实用算法技巧.分享给大家供大家参考. 具体实现方法如下: #include <iostream> #include <vector> #include <iterator> #include <algorithm> using namespace std; vector<int> result; struct Node { Node(int i = 0, Node *pl

Matlab.NET混合编程技巧之——找出Matlab内置函数

原文:[原创]Matlab.NET混合编程技巧之--找出Matlab内置函数 Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯定不难.反之,有时候一个小错误,可能抓破脑袋,加班几个晚上,调试才能解决.同样,由于Matlab.NET混编的特殊性,加上MathWorks的原因,英文文档和没有披露一些详细的细节(甚至不允许反编译MWArray.dll,呵呵,它不允许,不代表你不会哦).经过很多项目,和大量的实验,也发现了一些小技巧和小秘密,今天就分享其中一个,先做一个

PowerShell小技巧实现IE Web自动化_PowerShell

Windows 系统自带的Internet Explore +加上PowerShell 即可搞定. 今天就分享下这几天自己写的几个小函数,欢迎拍砖: # # 打开IE窗口 # function New-IEWindow { param( [string]$Url, [switch]$Visible, [switch]$FullScreen ) $Global:IEHost = new-object -com "InternetExplorer.Application" $Global:

Powershell小技巧之使用Update-TypeData扩展类型系统_PowerShell

脚本 Update-TypeData -TypeName 'System.DateTime' -MemberName '时辰' -MemberType 'ScriptProperty' -Value { $timeAliasArray='子丑寅卯辰巳午未申酉戌亥' $hour = $this.Hour [int]$index=0 if($hour -eq 22){ $index=11 } else{ $index=[math]::Floor( ( $hour+1 ) % 23 / 2 ) } r