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

[文本处理] 【已解决】批处理:如何在代码中添加循环

本帖最后由 思想之翼 于 2015-12-16 12:23 编辑
  1. @set @n=0;//&cscript -nologo -e:jscript "%~0"<a.txt>b.txt & pause & exit
  2. while (!WScript.StdIn.AtEndOfStream) {
  3.         str = WScript.StdIn.ReadLine();
  4.         if (!/^\s*$/.test(str)) WScript.Echo(getNum(str))
  5. }
  6. function getNum(s) {
  7.         ar = [];
  8.         for (i=10; i<=19; i++) {
  9.                 s1 = (i + "").substr(1);
  10.                 ar.push(s.split(s1).length + "=" + s1);
  11.         }
  12.         ar.sort(function(x,y){return y.split("=")[0]-x.split("=")[0]});
  13.         return ar.join(" ").replace(/\d+=/g, "");
  14. }
复制代码
如何在上述第一行代码添加循环?
for %%a in ("D:/数据/*.txt") do (
        cscript -nologo -e:jscript "%~0"<"%%a" >"D:/数据/新文本/%%~nxa"
)
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

这个代码的作用是什么?你需要实现什么样的功能?

TOP

回复 2# WHY

感谢关注。
是关于这个帖子的扩展运用http://www.bathome.net/viewthread.php?tid=32677&highlight=

TOP

论坛搜索 / JS模块顶层。

我很好奇,你仿照这会写不。求满足好奇心。O(∩_∩)O!
http://www.bathome.net/thread-31329-1-1.html
1

评分人数

    • 思想之翼: 感谢提供。一时没有找到该链接。技术 + 1
人生是一部书/只有这一页最温暖/读懂它的时候/我们在远方流泪...

TOP

本帖最后由 pcl_test 于 2015-12-16 11:09 编辑

为何你提供的路径总是用正斜杠

TOP

  1. @set @n=0;/* & echo off
  2. set "fd=D:\数据\新文本\"
  3. md "%fd%" 2>nul
  4. pushd D:\数据\
  5. dir /b *.txt | cscript -nologo -e:jscript "%~0" "%fd%"
  6. pause & exit
  7. */
  8. var fd = WScript.Arguments(0);
  9. var fso = new ActiveXObject('Scripting.FileSystemObject');
  10. while (!WScript.StdIn.AtEndOfStream) {
  11.         var f = WScript.StdIn.ReadLine();
  12.         var arr = readTextFile(f).split('\r\n');
  13.         var str = '';
  14.         for(var i=0; i<arr.length; i++){
  15.                 if (!/^\s*$/.test(arr[i])) str += getNum(arr[i]) + '\r\n';
  16.         }
  17.         fso.OpenTextFile(fd + f, 2, true).Write(str)
  18. }
  19. function readTextFile(strFile) {
  20.         var objFile = fso.OpenTextFile(strFile, 1);
  21.         var s = objFile.ReadAll();
  22.         objFile.Close(); objFile = null;
  23.         return s
  24. }
  25. function getNum(s) {
  26.         var ar = [];
  27.         for (var i=0; i<=9; i++) {
  28.                 ar.push(s.split(i).length + "=" + i);
  29.         }
  30.         ar.sort(function(x,y){return y.split("=")[0]-x.split("=")[0]});
  31.         return ar.join(" ").replace(/\d+=/g, "");
  32. }
复制代码
1

评分人数

TOP

返回列表