回复 15# changedirectory
笔误漏了一个 &,已修改...
--------------------------------------------------------------- set/p line=<a.txt
- rem 读 a.txt 第一行
-
- (set/p line=
- set/p line=)<a.txt
- rem 读 a.txt 第二行
复制代码 --------------------------------------------------------------- (for /l (9 -1) do set "line="&set/p line=)<a.txt
复制代码 这里的 for /l (9 -1) do 是 for /l (9 -1 0) do 的简写,其效果等价于- (for /l (1 1 10) do set "line="&set/p line=)<a.txt
复制代码 也就是循环十次,因为 set/p line= 接收到空行时不会修改 %line%,所以用 set "line=" 先将 line 设为空。
如果a.txt 前 10 行都不为空,则等价于- (set/p line=
- set/p line=
- set/p line=
- set/p line=
- set/p line=
- set/p line=
- set/p line=
- set/p line=
- set/p line=
- set/p line=)<a.txt
复制代码 也就是依次读取 a.txt 的前十行
--------------------------------------------------------------
一般来说处理文件的时候,自己用的话最好的选择还是 gawk/sed/perl,给别人用建议用 vbs 或 js 或 bat+js,是最通用的方案且效率不低
win 下的 shell 本职不是处理文本,linux 军团才是这方面的专家
gawk 4.02 ---- 156K
sed 4.2.2 ---- 76K
perl 5.16.2 ---- (exe+dll = 393K+1339K) |