返回列表 发帖
本帖最后由 terse 于 2023-4-25 01:44 编辑
  1. @if(0)==(0) echo off
  2. cscript -NoLogo -E:JScript %0 <a.txt
  3. pause & exit
  4. 文件有中文情况,存为ANSI格式
  5. @end
  6. var text =WSH.StdIn.ReadAll();
  7. var arr=text.match(/\{.*?\}/g)
  8. for (i = 0, len=arr.length; i<len; i++) {
  9.       var obj = new Function("return" + unescape(arr[i]))();
  10.       WSH.Echo(obj.fileId,obj.fileName,obj.fileSize);
  11. }
复制代码
  1. powershell "((sls -Path .\aa.txt -Pattern '\{.*?\}' -AllMatches ).Matches.Value|ConvertFrom-Json|group fileId,fileName,fileSize).name"
复制代码
另一种格式的话
  1. @if(0)==(0) echo off
  2. cscript -NoLogo -E:JScript %0 <a.txt
  3. pause & exit
  4. 文件有中文情况,存为ANSI格式
  5. @end
  6. var text =WSH.StdIn.ReadAll();
  7. var obj = new Function("return" + unescape(text))();
  8. var arr = obj.data;
  9. for (i = 0, len=arr.length; i<len; i++) {
  10.       WSH.Echo(arr[i].fileId,arr[i].fileName,arr[i].fileSize);
  11. }
复制代码
1

评分人数

    • lonron: 感谢帮助,PS的方式很赞技术 + 1

TOP

  1. ((gc .\aa.txt -Encoding UTF8|ConvertFrom-Json).data|group fileId,fileName,fileSize).name
复制代码
回复 15# lonron

TOP

试试这样呢
  1. (gc .\a.txt -Encoding UTF8|ConvertFrom-Json).data.ForEach({"{0}|{1}|{2}" -f $_.fileId,$_.fileName,$_.fileSize  })
复制代码
回复 17# lonron

TOP

回复 20# lonron
源数据是UTF8,有带BOM的,也有不带的,不带的话有时会出错

TOP

本帖最后由 terse 于 2023-4-25 17:37 编辑

回复 23# lonron
i除了nvoke-webreques 有几种方法都可以实现 IWR不行的话 这样可以试
  1. powershell "$url='https://189.ly93.cc/qieiaeUNRrMj?accessCode=?&accessToken=B29F77379D3A9977A6C840F8CEF74142';$web=New-Object System.Net.WebClient;$web.Encoding=[System.Text.Encoding]::UTF8;($web.DownloadString($url)| convertfrom-json).data| %% {'{0}|{1}' -f $_.fileId,$_.fileName}"
复制代码
这样也行
  1. $url='https://189.ly93.cc/qieiaeUNRrMj?accessCode=?&accessToken=B29F77379D3A9977A6C840F8CEF74142';((iwr $url).Content| convertfrom-json).data| % {'{0}|{1}' -f $_.fileId,$_.fileName}
复制代码

TOP

回复 25# lonron
大概是convertfrom-json的因素

要么就不用convertfrom-json 直接 irm
  1. $url = 'https://189.ly93.cc/qieiaeUNRrMj?accessCode=?&accessToken=B29F77379D3A9977A6C840F8CEF74142'; (irm $url).data| % {'{0}|{1}' -f $_.fileId,$_.fileName}
复制代码
1

评分人数

    • lonron: 补评分 本帖最终采用此方法技术 + 1

TOP

回复 27# lonron

html数据不能当作Json数据处理把,’https://gitee.com/lonron/dm/releases/tag/t ‘地址里 并没有看到你在27楼描述的 release  title 这部分 你是怎么得到的

TOP

回复 30# lonron
搞混了 之前我以为你那个CURL是PS的,原来不是
这样试呢
  1. ((iwr $url -Headers @{"Accept"="application/json"}).Content|  ConvertFrom-Json).release.release.title
复制代码
1

评分人数

TOP

irm 直接装对象 不需要另行处理   irm应该方便一点 前提是对象格式要正确

TOP

返回列表