Board logo

标题: [问题求助] vbs如何实现根据指定文本内指定行列出的文件删除指定文件夹/目录里的同名文件? [打印本页]

作者: binghejin    时间: 2016-5-30 18:26     标题: vbs如何实现根据指定文本内指定行列出的文件删除指定文件夹/目录里的同名文件?

本帖最后由 pcl_test 于 2016-5-30 20:46 编辑

1、首先读取指定文件内的指定行。(比如:ls.txt里面的第2行)
2、删除指定目录中的和ls.txt文件中第二行内容相同的文件。(比如:ls.txt里面第二行的内容为123.txt,那么就删除指定文件夹中的123.txt)
3、不用弹窗,直接执行就好!
作者: binghejin    时间: 2016-5-30 18:28

在线等,有大神来吗?我完全不会vbs,但是批处理解决不了这个问题,只好用vbs代码了!
作者: ivor    时间: 2016-5-30 20:28

回复 2# binghejin
  1. @echo off
  2. for /f "delims=" %%a in (ls.txt) do (
  3. del "%%a"
  4. )
复制代码

作者: pcl_test    时间: 2016-5-30 21:11

本帖最后由 pcl_test 于 2016-7-15 23:00 编辑
  1. fd = "D:\指定文件夹"
  2. Set fso = CreateObject("Scripting.FileSystemObject")
  3. Set file = fso.OpenTextFile("ls.txt", 1)
  4. Do While file.AtEndOfStream <> true
  5.     i=i+1
  6.     f = file.ReadLine
  7.     If i = 2 Then Exit Do
  8. Loop
  9. msgbox "要删除的文件为 "&fd&"\"&f  '测试无误自行屏蔽该行
  10. If fso.FileExists(fd&"\"&f) Then fso.DeleteFile fd&"\"&f
复制代码

作者: binghejin    时间: 2016-5-30 21:19

回复 4# pcl_test


    老大,我完全不会vbs,给个完整代码吧!
作者: binghejin    时间: 2016-5-30 21:21

回复 3# ivor


    无效,而且最重要的是,用批处理的话,运行一次没问题,如果做成交互的话,当运行第二次的时候,就不行了。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2