这是之前ivor大佬帮助别人解决 “批量提取N个文本的指定内容行数”的代码
------------------------------------------------------
变量参考例子:
num=1..3 提取2(正数)至4(正数)行内容
num=3 提取第4(正数)行内容
num=-3 提取-3(倒数)行内容
num=-1..-3 提取-1(倒数)至-3(倒数)行内容
num=-1..3 提取-1(倒数)和 1 至 4(正数)行内容 慎用:不建议
num=1,5,9 提取2,6,10(正数)行内容
num=-1,-5,-9 提取-1,-5,-9(倒数)行内容
代码内容- <# :
- @echo off
- rem 增强代码兼容性,代码保存为 ".bat"、".cmd"、".ps1"均可执行
- powershell Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
- more +8 "%~f0" >"%~dpn0.ps1"
- powershell -File "%~dpn0.ps1"
- del "%~dpn0.ps1" & pause & exit /b
- #>
- del 输出结果.txt -ErrorAction "SilentlyContinue"
-
- $num = 1..3
-
- dir *.txt | foreach {
- $line = get-content "$_"
- foreach ($l in $line[$num])
- {
- -Join($_.Name, " ", $l) | out-file -Append "输出结果.txt"
- }
- }
复制代码 ----------------------------------------------------------
我有一个额外的需求
输出结果的时候能否加一个序列
比如我提取的是文档的前两行,目前代码输出的结果如下:
- name: Fast
uuid: "57e0cb4d-eae5-48ec-8071-149dc2b3ea4q"
- name: Fast
uuid: "96e0cb4d-eare-4802-8091-149dc2b309e0"
想让输出带序列的结果,例如:
- name: Fast01
uuid: "57e0cb4d-eae5-48ec-8071-149dc2b3ea4q"
- name: Fast02
uuid: "96e0cb4d-eare-4802-8091-149dc2b309e0"
请问大佬如果修改一下实现这样的效果呢,求指点,不胜感激 |