从PS脚本获取输出并传递给curl命令

时间:2018-08-14 20:52:50

标签: powershell curl

如何传递powershell脚本的输出以更新curl命令中的参数。

示例:

<html>
<head>
	<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>

	<form action="" id="myForm">

		<div style="display:inline-block; position:relative;">
			<select name="test" id="testing" disabled>
				<option name="first" value='first'>first</option>
				<option name="second" value="second">second</option>
			</select>
		  <div style="position:absolute; left:0; right:0; top:0; bottom:0;"></div>
		</div>

	</form>
</body>
</html>

如果以上命令的输出是文件夹名称,即xyz,它对应于以下curl命令中的“备份ID”。

gci D:\temp | ? { $_.BaseName } | sort CreationTime -desc | select -f 1 

我们如何使用Powershell来获取文件夹名称并在上述curl命令中更新backupid参数,并使用新的更新后的备份ID执行curl。换句话说,如果powershell的输出为1234,则应将运行上述curl的.bat文件的backupId更新为1234,并通过任务计划程序执行。

1 个答案:

答案 0 :(得分:0)

听起来您在问如何捕获powershell命令或脚本的输出,然后将其传递给从批处理文件调用的curl。因此,您实际上是在问如何与批处理文件进行通信。

这取决于如何调用powershell脚本和批处理文件。 Powershell脚本会调用批处理文件吗?批处理文件是否运行powershell脚本?是否有其他程序或外壳同时调用powershell和批处理?

根据所有操作的方式,您可以尝试:

  • 将powershell输出保存为环境变量。修改批处理文件以在调用curl

  • 时读取环境变量的内容
  • 将PowerShell输出写入文件。修改批处理文件以读取该文件,并将其内容合并到curl调用中。