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

[文件操作] 批处理怎样按照指定格式列出文件信息?

想把c盘下所有的exe文件都输出到一个文件如1.txt文件 就只要文件的地址和文件名
格式:
explorer.exe  c:\windows
  cmd.exe         c:\windows\system32
等等

如果直接输入名称就可以删除指定文件的最好

"如果直接输入名称就可以删除指定文件的最好"什么意思。看了描述后,不知到底要干什么?
枫中残雪:风停了,我的心却在动,让我心中的寒意走向远方

TOP

本帖最后由 zm900612 于 2011-3-29 12:54 编辑

不加引号比较麻烦,还要考虑空格
单用双引号比较难区分路径与文件名,虽然只用空格当做分隔符也可以做到,但是加个\可以省很多事。
基于上述原因,我改成这样:
  1. @echo off
  2. (if not exist 1.txt for /f "delims=" %%a in ('dir /a-d /b *.exe^|findstr "\.exe$"') do echo "%%~na"\\\\\"%%~dpa")>1.txt
  3. set /p del=请输入要删除的文件名
  4. for /f "tokens=1* delims=\" %%a in ('findstr /b ""%del%""') do del "%%~b%%~a.exe"
复制代码
不懂楼主为什么要把文件名放在路径前,这么别扭的输出方式无论是生成还是提取都平添了许多不必要的麻烦

TOP

返回列表