【问题标题】:how to create ps1 file which takes input as json and based on parameters exceute batch file? [closed]如何创建将输入作为json并基于参数执行批处理文件的ps1文件? [关闭]
【发布时间】:2016-03-06 23:35:51
【问题描述】:

我有这个 json 输入

[
    {
    Name:"test1.bat",
    Create:"Yes",
    Version:"2"
    },
    {
    Name:"test2.bat",
    Create:"Yes",
    Version:"3"
    },
]

test1.bat //somecode使用参数创建版本

test2.bat // somecode 使用参数创建版本

如何创建它的 ps1(powershell script) 文件?

【问题讨论】:

  • 批处理文件没有命名参数,需要如何使用? test1.bat Yes 2?
  • 以同样的方式是的
  • 您可以轻松找到多种解决方案,用于在 powershell 中解析 JSON 文件以及调用批处理文件。由于零研究工作而投反对票。
  • 当然想知道这一切背后的全部前提。在过去的几天里,你问了几个非常相似的问题。基本上所有人都在尝试做同样的事情。
  • 我只是想学习不同方面的 powershell 脚本,但我找不到任何一个好的教程:(

标签: json powershell batch-file powershell-2.0


【解决方案1】:

这是一个批处理文件解决方案(发布在这里是因为这个问题有batch-file 标签),IMO 比任何 ps1 解决方案都简单,但我确信它比 ps1 解决方案运行得更快。

@echo off
setlocal EnableDelayedExpansion

set "Version="
for /F "tokens=1,2 delims=:, " %%a in ('findstr ":" input.txt') do (
   set "%%a=%%~b"
   if defined Version (
      ECHO !Name! !Create! !Version!
      set "Version="
   )
)

检查显示的命令是否正确后,您必须删除 ECHO 部分才能执行批处理文件。输出示例:

test1.bat Yes 2
test2.bat Yes 3

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-11
    • 2023-03-28
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    相关资源
    最近更新 更多