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

[数值计算] 【已解决】批处理怎样按列从小到大顺序输出行内容

本帖最后由 pcl_test 于 2017-6-22 20:37 编辑

文本2.txt

04 21 23 24
21 23 24 31
23 24 30 31
10 14 17 25
10 25 29 33
14 17 25 29
17 25 29 33
02 03 06 15
03 06 15 30 ::**
03 06 14 15  ::**
06 15 25 30
11 13 17 28
01 03 08 21
01 02 03 06::**
01 02 03 05::**
目的是从小到大顺序输出列:
01 02 03 05::**
01 02 03 06::**
01 03 08 21
02 03 06 15
03 06 14 15::**
03 06 15 30::**
04.。。。。。
。。。。。。
注意标注的位置 的排序 谢谢 ::**

说的是什么意思?

TOP

LZ的错别字是一大奇观

TOP

有小到大的顺序 列的输出

TOP

我就是网了 晕 本来我也做过一个雷死的 晕

TOP

本帖最后由 /zhqsystem/zhq 于 2015-11-9 03:56 编辑

  1. @echo off
  2. (echo,Windows Registry Editor Version 5.00
  3. echo/
  4. echo,[-HKEY_CURRENT_USER\Software\name]
  5. )>"%~dp0\执行完成后自动删除.reg"
  6. for /f "delims=" %%i in ('type "%~dp0\1.txt"') do (
  7. reg.exe add "hkcu\software\name\%%i" /f
  8. )
  9. for /f "delims=" %%i in ('reg.exe query "hkcu\software\name"') do (
  10. reg.exe query "%%i" >nul 2>nul&&(
  11.   (echo=%%~nxi)>>"%~dp0\1_new.txt"
  12.   reg.exe delete "%%i" /va /f
  13. )
  14. )
  15. timeout/t 1
  16. regedit.exe /s "%~dp0\执行完成后自动删除.reg"&&del/f/q "%~dp0\执行完成后自动删除.reg"
  17. pause
复制代码

上边的是不转换后边的内容,下边的转换并删除无用空格及其标点,各有不同之处,截取字符串也可以不过考虑最后的字符不稳定没有用到
  1. @echo off
  2. rd/s/q "%~dp0\name" 2>nul
  3. for /f "delims=" %%i in ('type "%~dp0\1.txt"') do (
  4. for /f "tokens=1,* delims=:" %%j in ("%%i") do (
  5.   if "%%k"=="**" (
  6.    md "%~dp0\name\%%~nxj.bathome"
  7.   ) else (
  8.    md "%~dp0\name\%%~nxj"
  9.   )
  10. )
  11. )
  12. (for /f "delims=" %%i in ('dir/ad/b/l/on "%~dp0\name\"') do (
  13. if /i "%%~xi"==".bathome" (
  14.   echo,%%~ni::**
  15. ) else (
  16.   echo,%%~ni
  17. )
  18. )
  19. )>1_new.txt
  20. rd/s/q "%~dp0\name" 2>nul
  21. pause
复制代码
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

回复 6# /zhqsystem/zhq


    那天 试试 不过 你写的 代码 看不懂 不敢 运行啊 那天好好研究下  还是要谢谢 热心的网友啊

TOP

回复 7# ads350668398


    第一种是运用注册表自动名称排序功能,会产生无用注册表,但reg delete 不能直接清除项值,所以需要产生清理的文件来删除,第二种利用建立空文件夹,利用dir名称排序重新整理,这种遇到特殊字符也不能用,简单的排序还是可以用的,之后删除临时新建的文件夹,find重复次数太多反复调用会卡顿,所以选择了临时文件提取方式,也是高效的方式
1

评分人数

这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

回复 8# /zhqsystem/zhq


    你真是真有耐心。好性子。
下载安装python3 https://www.python.org/downloads/ 代码存为xx.py 双击运行或IDLE打开F5运行

TOP

type 2.txt|sort

TOP

回复 9# 依山居
不是耐心问题是把新鲜思路共享出去,有助于提高效率,其实我比较反感的是伸手党
我猜的没错的话楼主[不是9楼你啊是楼主]也应该算其中一个,借楼提醒下[楼主]啊"刚才忘发了先借楼吧",不要所有都要依靠他人,这样会产生一种依赖,当到一定程度会造成负面影响,没有他人,自己办不了任何事情,建议:代码不用记只用思路和要的结果,代码的经过是为结果"修路"
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

回复 11# /zhqsystem/zhq


    哈哈。我智商还行。我懂的。
下载安装python3 https://www.python.org/downloads/ 代码存为xx.py 双击运行或IDLE打开F5运行

TOP

聊啥呢#024 我只是不太 精通 BAT 的小白 我自己写的 原创的来来 看看 我可不是啥党啊!!
http://www.bathome.net/thread-38080-1-1.html

TOP

返回列表