本帖最后由 CrLf 于 2014-8-13 23:39 编辑
回复 6# tommytangtang
解释如下- set "str=%%~a"
- ::设置 str 为行内容
- echo !n!,,!str: =,!
- ::输出 [行号],,[str空格替换为,后的内容]
复制代码 用 tokens 也行,但 endlocal 需要和 setlocal 对应使用,因为 setlocal 最多只能有 32 层,超过就会报错
忽然发现顶楼文本都是数字,所以 setlocal 就无需放到循环内了,代码已修改,应该快多了
要想更快,推荐用 gawk,专业的文本处理工具:- @gawk -v flag=, "{print NR flag flag $1 flag $2 flag $3}" 1.txt>2.txt
复制代码
|