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

[问题求助] powershell如何在原tXt文件中实现合并相邻两行并排序?

现有a.txt,内容如下:
aaaa
bbbb
cccc
dddd
1111
2222
3333
4444
想要通过powershell处理后,得到a.txt的结果如下:
1111,2222
3333,4444
aaaa,bbbb
cccc,dddd
并保存,如何实现?初学powershell,请高手赐教,先谢了!

我的代码比较粗糙,适合初学者
  1. $item = get-item C:\Users\12HS\a.txt;
  2. $i = 0;
  3. $str = "";
  4. Get-Content $item | ForEach-Object{
  5.                                 if ($i % 2 -eq 0)
  6.                                 {
  7.                                     $str += $_ + ","
  8.                                   }
  9.                                   else
  10.                                   {
  11.                                     $str += $_ + "`r`n";
  12.                                    }
  13.                                    
  14.                                    $i = $i + 1;
  15.                               }
  16. Out-File -FilePath t.TXT -Encoding ascii  -InputObject $str;
  17. Get-Content t.TXT |Sort-Object |Out-File -FilePath OUT.TXT
  18. Remove-Item t.txt
  19.   
复制代码

TOP

本帖最后由 CrLf 于 2015-10-21 16:40 编辑
  1. $a = type a.txt
  2. 1..($a.length/2) | %{$a[$_] + "," + $a[$_+1]} | sort
复制代码

TOP

回复 2# CrLf


    先数字后英文字母排序

TOP

1111 变成第一行是依据什么逻辑

TOP

返回列表