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

[文件操作] 批处理如何获取文件的路径、创建时间和文件名

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

关dir提取文件创建时间、路径方法。
格式如下:
路径  创建时间  名称
发表于 2016-10-18 11:34:20 | 显示全部楼层
  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. for /f "tokens=1-4" %%a in ('dir /a-d /tc ^|findstr [0-9]:') do set #%%d=%%a
  4. for /f "delims=" %%a in ('forfiles /c "cmd /c echo.@path"') do echo.%%~dpa !#%%~nxa! %%~nxa
  5. pause
复制代码
 楼主| 发表于 2016-10-18 14:38:25 | 显示全部楼层
本帖最后由 bat.bat 于 2016-10-18 14:42 编辑

回复 2# flyinnet9
我试了一下,反应这个forfiles不是内部与外部命令,在帮帮忙
发表于 2016-10-18 15:09:27 | 显示全部楼层
本帖最后由 pcl_test 于 2016-10-18 15:14 编辑

保存为bat文件运行
  1. @echo off
  2. for /f "tokens=1-3*" %%a in ('dir /a-d/tc^|find ":"') do echo;%~dp0%%d ^| %%a %%b ^| %%d
  3. pause
复制代码
  1. @echo off
  2. set "fd=%~p0"
  3. wmic datafile where "drive='%~d0' and path='%fd:\=\\%'" get Name,InstallDate,FileName,Extension /value
  4. pause
复制代码
  1. //&cls&dir /a-d/b|cscript -nologo -e:jscript "%~f0"&pause&exit

  2. var fso=new ActiveXObject('Scripting.FileSystemObject'), s='';
  3. while(!WSH.StdIn.AtEndOfStream){
  4.     var f=fso.GetFile(WSH.StdIn.ReadLine());
  5.     s+=f.Path+' | '+(new Date(f.DateCreated)).toLocaleString()+' | '+f.Name+'\r\n';
  6. }
  7. WSH.Echo(s);
复制代码
  1. rem win7及以上系统运行
  2. powershell -c "dir|?{!$_.PSIsContainer}|select FullName,CreationTime,Name"
  3. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
bat.bat + 1 jing

查看全部评分

 楼主| 发表于 2016-10-19 15:10:15 | 显示全部楼层
本帖最后由 bat.bat 于 2016-10-19 17:14 编辑

回复 4# pcl_test
谢谢大神,我想在EF盘提取txt格式,又怎么写?帮帮忙了
发表于 2016-10-19 19:30:48 | 显示全部楼层
回复 5# bat.bat
  1. @echo off
  2. cd /d E:\
  3. for /f "tokens=1-3*" %%a in ('dir /a-d/tc *.txt ^| find ":"') do echo;%~dp0%%d ^| %%a %%b ^| %%d
  4. cd /d F:\
  5. for /f "tokens=1-3*" %%a in ('dir /a-d/tc *.txt ^| find ":"') do echo;%~dp0%%d ^| %%a %%b ^| %%d
  6. pause
复制代码
 楼主| 发表于 2016-10-20 08:36:28 | 显示全部楼层
回复 6# GNU
可以是EF盘下所有的txt格式的文件不?
发表于 2016-10-20 09:47:52 | 显示全部楼层
回复 7# bat.bat


@echo off
cd /d E:\
for /f "tokens=1-3*" %%a in ('dir /s /a-d/tc *.txt ^| find ":"') do echo;%~dp0%%d ^| %%a %%b ^| %%d
cd /d F:\
for /f "tokens=1-3*" %%a in ('dir /s /a-d/tc *.txt ^| find ":"') do echo;%~dp0%%d ^| %%a %%b ^| %%d
pause

评分

参与人数 1技术 +1 收起 理由
bat.bat + 1 方法

查看全部评分

 楼主| 发表于 2016-10-20 09:51:53 | 显示全部楼层
本帖最后由 bat.bat 于 2016-10-20 09:52 编辑

回复 8# GNU
十分感谢
发表于 2016-10-20 10:17:13 | 显示全部楼层
回复 4# pcl_test


    大大,来个可拖拽的呗,拖拽文件夹到bat获取所有文件的名称名称以及路径。文件名按1-999排序,万分感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 07:26 , Processed in 0.022837 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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