Powershell如何在Start-Job的Scriptblock里传参?

如何在Start-Job的Scriptblock里传参?

方法1:

利用本地变量,从一个可扩展的字符串,使用[scriptblock]::create方法创建脚本块:

$v1 = "123"
$v2 = "asdf"
$sb = [scriptblock]::Create("Write-Host 'Values are: $v1, $v2'")
$job = Start-Job -ScriptBlock $sb

方法2:

在InitializationScript中设置变量

$Init_Script = {
$v1 = "123"
$v2 = "asdf"
}
$sb = {
    Write-Host "Values are: $v1, $v2"
}
$job = Start-Job -InitializationScript $Init_Script -ScriptBlock $sb

方法3:

使用-Argumentlist参数

$v1 = "123"
$v2 = "asdf"
$sb = {
    Write-Host "Values are: $($args[0]), $($args[1])"
}
$job = Start-Job  -ScriptBlock $sb -ArgumentList $v1,$v2

原文地址:http://blog.51cto.com/ultrasql/2068010

时间: 2024-10-12 08:39:52

Powershell如何在Start-Job的Scriptblock里传参?的相关文章

如何在present出来的viewController里使用push方法

MenuViewController * menuViewController = [[MenuViewController alloc] init]; menuViewController.delegate = self; UIViewController * controller = self.view.window.rootViewController; controller.modalPresentationStyle = UIModalPresentationCurrentContex

如何在O(1)的时间里删除单链表的结点

题目是这样的:给你一个单链表的表头,再给你其中某个结点的指针,要你删除这个结点,条件是你的程序必须在O(1)的时间内完成删除. 由于有的同学对链表还不是很熟悉,本文尽量描述的通俗易懂,老鸟请直接跳过前面一大段. 链表结构如下: [cpp] view plaincopyprint? struct node { int val; node* next; }; 题目不是很难,很快就能想到好办法:) 首先回顾一下普通的删除方法,首先通过表头,找到待删除结点(设为B)的前一个结点(设为A),将A的指向改一

[算法浅析] 如何在O(1)的时间里删除单链表的结点

题目是这样的:给你一个单链表的表头,再给你其中某个结点的指针,要你删除这个结点,条件是你的程序必须在O(1)的时间内完成删除. 由于有的同学对链表还不是很熟悉,本文尽量描述的通俗易懂,老鸟请直接跳过前面一大段. 链表结构如下: struct node { int val; node* next; }; 题目不是很难,很快就能想到好办法:) 首先回顾一下普通的删除方法,首先通过表头,找到待删除结点(设为B)的前一个结点(设为A),将A的指向改一下就行,然后删除掉B结点就行了.要删除的结点一定要de

C#,往线程里传参数的方法总结

C#,往线程里传参数的方法总结 Thread (ParameterizedThreadStart) 初始化 Thread 类的新实例,指定允许对象在线程启动时传递给线程的委托.   Thread (ThreadStart) 初始化 Thread 类的新实例.  由 .NET Compact Framework 支持.  Thread (ParameterizedThreadStart, Int32) 初始化 Thread 类的新实例,指定允许对象在线程启动时传递给线程的委托,并指定线程的最大堆栈

如何在Linux中使用sFTP上传或下载文件与文件夹

如何在Linux中使用sFTP上传或下载文件与文件夹 sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似. 然而,sFTP 比 FTP 更安全;它通过加密 SSH 传输处理所有操作.在本文中,我们将向你展示如何使用 sFTP 上传/下载整个目录(包括其子目录和子文件). 作者:Aaron Kili来源:Linux中国|2017-03-09 14:42 移动端 收藏 分享 51CTO诚邀您9月23号和秒拍/国美/美团元专家一起聊智能CDN的优化之路

Linux Shell 通过传参的方式往/etc/user.conf里添加用户

实现通过传参的方式往/etc/user.conf里添加用户,具体要求如下:1)命令用法:USAGE: sh adduser {-add|-del|-search} username 2)传参要求:如果参数为-add时,表示添加后面接的用户名,如果参数为-del时,表示删除后面接的用户名,如果参数为-search时,表示查找后面接的用户名,3)如果有同名的用户则不能添加,没有对应用户则无需删除,查找到用户以及没有用户时给出明确提示.4)/etc/user.conf不能被所有外部用户直接删除及修改

如何在Rocks HPC集群里安装PBS Pro开源版

PBS Pro可以算是torque的商业版本.功能强大.尤其是在其开源之后,成为了最强大的免费任务调度软件. 但是PBS Pro开源版本的预编译版本是针对CEntos7的,而Rocks 集群管理软件只支持到CEntos6.8.因此使用PBS Pro开源版本,必须要从源代码安装.安装过程中有很多的困难.因此再次记录一下过程,供大家参考. 首先,rocks集群安装的时候最好使用6.1.1,不要使用6.2;不要安装sge; OS roll最好不要使用自带的,而是用标准的centos6.7或者6.8安装

如何在SAP CRM WebClient UI里创建HANA Live Report

1. 使用业务角色ANALYTICSPRO登录WebClient UI: 2. 点击新建按钮: 为新建的报表分配一个HANA Live Query: 指定Query的参数: 上图WebClient UI选择的参数都定义在HANA studio里: 给报表添加属性: 添加measure: 之后报表即可在WebClient UI里成功渲染: 并且也能在CRM Fiori的Customer Report应用里看到该report. 如果想获得更多关于上图提到的Fiori应用,请查看我的公众号文章 SAP

如何在SAP Server Side JavaScript里消费destination

在SAP云平台里打开SAP HANA Web-Based Development Workbench进行服务器端JavaScript的开发. 创建一个新的package: 创建一个新的application: 创建一个新的文件google-distance-api.xshttpdest用于维护destination相关信息: host = "maps.googleapis.com"; port = 80; pathPrefix = "/maps/api/distancemat