找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25985|回复: 7

[文件操作] 批处理如何实现调用外部命令/程序对多个指定类型/扩展名的文件进行处理

[复制链接]
发表于 2016-8-12 10:05:05 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-8-12 14:20 编辑

外部程序批量执行txt文件中的清单
1.读取指定文件夹<import>中的所有csv文件,生成一个list.txt文件
举例: import文件夹下面有1.csv   2.csv 3.csv 文件,通过批处理生成一个扩展名的list.txt文件
格式为
1.csv
2.csv
3.csv

2.调用外部程序,把txt里面的内容以行为单位,分别作为参数传入到外部程序中
举例:
call IMPORT.EXE 1.csv  (这个为手动填写csv时的效果)我现在希望这个import.exe自动把list.txt中的文件全部执行一次。请问要怎么写?感谢。

评分

参与人数 1PB -2 收起 理由
pcl_test -2 发帖前先使用论坛搜索

查看全部评分

发表于 2016-8-12 10:24:08 | 显示全部楼层
本帖最后由 xxpinqz 于 2016-8-12 14:21 编辑
  1. @echo off
  2. for /f "delims=" %%a in ('dir /b /a-d *.csv 2^>nul') do call IMPORT.EXE "%%a"
复制代码
 楼主| 发表于 2016-8-12 10:45:54 | 显示全部楼层
回复 2# xxpinqz


  可以运行了,但是生成list.txt的时候最后多了一个换行符,可以不生成这个换房符号吗?
发表于 2016-8-12 13:06:54 | 显示全部楼层
回复 1# xuxnq
生成list.txt除了给import.exe调用还有什么用途么
 楼主| 发表于 2016-8-12 13:34:49 | 显示全部楼层
回复 4# pcl_test


    没有了。
发表于 2016-8-12 14:22:21 | 显示全部楼层
回复 3# xuxnq

改了不生成文件
 楼主| 发表于 2016-8-12 17:00:47 | 显示全部楼层
回复 6# xxpinqz


    好像不生成文件,但是里面还有一个换行符号,因为这个import.exe如果检测到还有一个空白行会报错。 可不可以再帮忙优化下,感谢
发表于 2016-8-12 18:18:24 | 显示全部楼层
回复 7# xuxnq

如果是换行,那应该是每次执行都会影响吧,不会只最后一次?
如果确定只是换行符,这样试试看。
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f %%i in ('copy/z %~s0 nul')do (
  3.     for /f "delims=" %%a in ('dir /b /a-d *.csv 2^>nul') do (
  4.         set "str=%%a"
  5.         call IMPORT.EXE "!str:%%i=!"
  6.     )
  7. )
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 12:51 , Processed in 0.018709 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表