当前位置: 首页 > 编程笔记 >

Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数

戚正业
2023-03-14
本文向大家介绍Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数,包括了Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数的使用技巧和注意事项,需要的朋友参考一下

这里演示如何利用PowerShell将一段Javascript函数字符串交给Jint引擎去执行。

执行Javascript函数

.Net版的Javascript解释器

可以从Git上获取Jint的代码,也可以从nuget上下载Jint的程序集。

Jint是一个面向.Net的Javascript解释器。Jint不会把Javascript编译成.Net字节码,所以它非常适用于脚本小且运行起来速度快的工程,或者运行在不同平台上的脚本。

PowerShell调用

拿到Dll根据-Path参数直接使用Add-Type命令即可:

function Invoke-JSAdd ($a, $b) {             
    Add-Type –Path  "C:\jint\Jint.dll"           
             
    $JavaScript = "
        function add(a, b) { 
            return a + b; 
        }
    "           
    $add = (New-Object Jint.Engine).            
            Execute($JavaScript).            
            GetValue("add")            
             
    $add.Invoke($a, $b).ToString()            
}

 

 类似资料:
  • 本文向大家介绍PowerShell小技巧之执行SOAP请求,包括了PowerShell小技巧之执行SOAP请求的使用技巧和注意事项,需要的朋友参考一下 SOAP的请求在Web Service是无处不在的,像WCF服务和传统ASMX asp.net的web Service。如果要测试SOAP服务是否好用通过web编程来实现就显得太过于复杂了,下面的脚本片段(snippet)将会轻而易举的完成通过po

  • 本文向大家介绍Powershell小技巧之使用WMI工具,包括了Powershell小技巧之使用WMI工具的使用技巧和注意事项,需要的朋友参考一下 WMI是一个强大的技术:只需要简单的指定一个WMI类名就能返回它类的所有实例: 你如何知道它有哪些类呢?这里有一款查找工具: 设置搜索条件后,代码将搜索出包含指定属性名的类(还可以通过通配符扩大搜索范围) 下面将找出所有包含“resolution”结尾

  • 本文向大家介绍Powershell小技巧之使用WS-Man来调用PowerShell命令,包括了Powershell小技巧之使用WS-Man来调用PowerShell命令的使用技巧和注意事项,需要的朋友参考一下 虽然PowerShell远程管理被构建在 WS-Management的之上,但它是协议中的协议。如果尝试使用 PSRP (PowerShell远程处理协议)直接进行交互,本质上需要在客户端

  • 本文向大家介绍Powershell小技巧之复合筛选,包括了Powershell小技巧之复合筛选的使用技巧和注意事项,需要的朋友参考一下 当你分析文本日志或筛选不通类型的信息时,你通常要使用 Where-Object。这里有一个通用脚本来说明复合筛选:

  • 本文向大家介绍Powershell小技巧之获取MAC地址,包括了Powershell小技巧之获取MAC地址的使用技巧和注意事项,需要的朋友参考一下 在Powershell中获取MAC地址不是很难。这里就有一种方法: 我们面临的问题是要分类数据并格式化。未处理的信息是来自Getmac.exe输出的CSV数据,这里有一个技巧:跳过第一行来命名你喜欢的列(此时包涵了CSV的头),此时可以提供你自己独特的

  • 本文向大家介绍Powershell小技巧之设置IE代理,包括了Powershell小技巧之设置IE代理的使用技巧和注意事项,需要的朋友参考一下 IE的代理设置位于注册表中:”HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings”下。关键键值为ProxyEnable和ProxyServer。所以通过更改注册表即可完成IE代