[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 yhcfsr 于 2019-3-9 18:30 编辑

楼上代码高大上,我来一个笨拙的
  1. @Powershell "& {[ScriptBlock]::Create("'#' + (gc '%~f0' -raw)").Invoke()}" & pause & goto :eof
  2. $text_A = type a.txt -ReadCount 0;
  3. $text_B = type b.txt -ReadCount 0;
  4. $count_a, $count_b = $text_A.Count, $text_B.Count;
  5. $count = $count_a + $count_b;
  6. [System.Collections.ArrayList] $result = @();
  7. $counter_a, $counter_b = 0, 0;
  8. for($i=0;$i -lt $count;$i++)
  9. {
  10.     #如果A文本读完,只处理B
  11.     if($counter_a -eq $count_a) { [void] $result.Add($text_B[$counter_B++]); }
  12.     #如果B文本读完,只处理A
  13.     elseif($counter_b -eq $count_b) { [void] $result.Add($text_A[$counter_a++]); }
  14.     #如果A,B都未完,下标为偶数时,加入A元素;下标为奇数时,加入B元素
  15.     else {
  16.         if($i%2 -eq 0) {[void] $result.Add($text_A[$counter_a++]); }
  17.         else {[void] $result.Add($text_B[$counter_b++]); }  
  18.     }
  19. }
  20. #输出结果
  21. [io.file]::WriteAllLines('结果.txt',$result,[text.encoding]::Default);
复制代码
1

评分人数

    • ivor: 乐于助人技术 + 1
QQ 33892006

TOP

回复 7# hqhlwz


    我测试没问题,把bat与a.txt,b.txt放一起测试.
如果你本身就是这样做才出的问题,那应该可能是系统版本原因,因为脚本第一句原因,需要powershell 5.0,也就是说需要WIN10系统
QQ 33892006

TOP

返回列表