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

TOP

12楼的临时文件可省略
后面sort也可弃去 直接SET ..等同了
JM版的FINDSTR  总觉得是整行获取  那不是后面还要很多工作

[ 本帖最后由 terse 于 2009-2-26 17:38 编辑 ]

TOP

用临时文件的话 我直接TYPE
FINDSTR 控制位数的话 好象用.的话的通配了  再想想
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "usebackq tokens=*" %%i in ("n.txt") do (
  3.     for %%j in (%%i) do (
  4.         set "str=   %%j"
  5.         echo !str:~-4!
  6. )))>tem
  7. for /f "tokens=*" %%i in ('sort tem') do (
  8.   set/a n+=1,n%%=6
  9.   if !n! equ 0 (echo !var:~1! %%i&set "var=")else set var=!var! %%i
  10. )
  11. if not "!var!"=="" echo !var:~1!
  12. pause
复制代码

[ 本帖最后由 terse 于 2009-2-26 21:04 编辑 ]
1

评分人数

    • namejm: 很有技巧性,高。PB + 10

TOP

我最多就这思路了  貌似比上面麻烦  继续看看
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "usebackq tokens=*" %%i in ("n.txt") do (
  3.     for %%j in (%%i) do echo %%j
  4. ))>tem
  5. for /l %%i in (1 1 4) do (
  6. if "!t!"=="" (set t=[0-9])else set t=[0-9]!t!
  7. for /f %%i in ('findstr "\<!t!\>" tem^|sort') do (
  8.     set/a n+=1,n%%=6
  9.     if !n! equ 0 (echo !var:~1! %%i&set "var=")else set var=!var! %%i
  10. )
  11. )
  12. if not "!var!"=="" echo !var:~1!
  13. pause
复制代码

TOP

原帖由 随风 于 2009-2-26 20:31 发表
'type tem^|sort' 为何不写成  sort tem

这就改  谢

TOP

返回列表