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

[日期时间] 怎么修改文件属性里面的修改日期

[复制链接]
发表于 2019-12-30 01:44:48 | 显示全部楼层 |阅读模式
各位大侠,请问现在一个文件夹下有很多的文件。每个文件的修改日期是不一样的。我可不可以建立一个文本。格式为:  文件名+需要修改成的日期     通过运行批处理自动根据建立的文本格式里面的内容来分别更改每个文件的修改日期呢?
比如一个文件夹下有文件1,2,3,,,,每个文件我用文本建立一个格式   1+20190101    2+2019102   3+20190303 ,,,,然后通过批处理达到自动设置的目的。时间的格式可以为   2019/01/01  或者20190101都可以。
只需要修改日期就可以了。

先谢谢各位大侠帮忙!
发表于 2019-12-30 08:53:35 | 显示全部楼层
文件是什么格式的
发表于 2019-12-30 13:38:05 | 显示全部楼层
本帖最后由 zaqmlp 于 2019-12-30 18:24 编辑
  1. <# :
  2. cls
  3. @echo off
  4. set info=互助互利,支付宝扫码头像,感谢赞助
  5. rem 有问题,可加QQ956535081及时沟通
  6. title %info%
  7. powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default)))"
  8. echo;%info%
  9. pause
  10. exit
  11. #>

  12. #文件夹路径
  13. $folder='D:\xxx\yyy';

  14. #文件及修改日期
  15. $list=@{
  16.     '1.txt'='2019-01-01';
  17.     '2.rar'='2019-10-23';
  18.     '3.jpg'='2019-03-03';
  19.     'xx.mp4'='2019-03-17'
  20. };

  21. if(-not (test-path -liter $folder)){write-host ('"'+$folder+'" not found');exit;};
  22. $files=@(dir -liter $folder|?{$_ -is [System.IO.FileInfo]});
  23. for($i=0;$i -lt $files.length;$i++){
  24.     if($list.ContainsKey($files[$i].Name)){
  25.         $old=$files[$i].LastWriteTime;
  26.         $new=(get-date ($list[$files[$i].Name]+' '+$old.toString('HH:mm:ss')));
  27.         $files[$i].LastWriteTime=$new;
  28.         write-host ('['+$old.toString('yyyy-MM-dd HH:mm:ss')+'-->'+$new.toString('yyyy-MM-dd HH:mm:ss')+']'+$files[$i].Name);
  29.     };
  30. };
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 12:03 , Processed in 0.016881 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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