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

[文本处理] [已解决]批处理如何对文本的最后一行进行特殊编辑?

本帖最后由 anshi009009 于 2011-10-13 10:26 编辑

================================================
我想做这样一个bat:把几个文件拖到批处理图标上之后,可以生成以下这个txt文本:
================================================
目标文本:

文件1的路径    +\
文件2的路径    +\
……
文件n的路径(最后一行没有 “+\”)
(n未知)
================================================
我现在的是这么写的:
  1. echo off
  2. del "d:\path.txt"
  3. :start
  4. echo %~f1   +\ >>"d:\path.txt"
  5. shift
  6. if not "%~1"=="" goto start
  7. pause
复制代码
================================================
运行结果(举例子):
D:\MiniTools\HA_GoldWave558_HZ\lame_enc.dll   +\
D:\MiniTools\HA_GoldWave558_HZ\GoldWave.exe   +\
D:\MiniTools\HA_GoldWave558_HZ\GWPreset.reg   +\
D:\MiniTools\HA_GoldWave558_HZ\GWSpeed.dll   +\ (但是我希望最后一行没有这个“+\”)
================================================
我希望的结果是:
D:\MiniTools\HA_GoldWave558_HZ\lame_enc.dll   +\
D:\MiniTools\HA_GoldWave558_HZ\GoldWave.exe   +\
D:\MiniTools\HA_GoldWave558_HZ\GWPreset.reg   +\
D:\MiniTools\HA_GoldWave558_HZ\GWSpeed.dll  
================================================
1

评分人数

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

  1. @echo off
  2. :ok
  3. if not "%~2"=="" (echo %~1   +\&shift&goto :ok) else echo %~1
  4. pause
复制代码
1

评分人数

TOP

回复 2# 601997526


   太厉害了,简单精炼! 感激的我痛哭流涕...

最后问个问题哈,如何获取当前运行的bat的路径?

TOP

回复 3# anshi009009


    echo %~dp0
详细查看 for /?

TOP

我刚去看了,找到答案了之后回来却发现:

4楼  发表于 6 秒前 | 只看该作者  

嘿嘿,坚决不做伸手党

TOP

多谢601997526 ,解决了我的大难题

TOP

多谢601997526 ,解决了我的大难题
anshi009009 发表于 2011-10-13 10:32



    真要谢的话就给我加点技术分吧,用分去换两书来看看也好^_^穷买不起

TOP

返回列表