batch-file - 使用批处理文件附加到文件名的最后修改日期和时间
问题描述
我正在尝试将所有*.csv
文件从一个文件夹复制到另一个文件夹,但是在复制时我需要将文件的修改日期和时间添加到文件名。例如,如果文件名是Test.csv
并且它在输出上被修改11/21/2018
15:01:10
应该是Test11-21-201815_01-10.csv
. 我找到了一个脚本来添加当前时间戳,但我需要添加文件的修改日期。你可以在下面看到它:
@echo off
set Source=C:\csvtest
set Target=C:\csvtest\csvtest\Archive
FOR /f "tokens=1-8 delims=/.:- " %%A in ("%date%%time%") DO (
SET Month=%%B
SET Day=%%C
SET Year=%%D
SET Hours=%%E
SET Minutes=%%F
SET Seconds=%%G
SET All=%%B-%%C-%%D_%%E-%%F-%%G
)
FOR %%i IN ("%Source%\*.csv") DO (
COPY "%%i" "%Target%\%%~Ni %All%.csv")
在此先感谢您的帮助。
解决方案
这里有一些关于附加日期的示例,
但我会使用 PowerShell 作为工具来完成此操作(批量包装)。
:: Q:\Test\2018\11\23\SO_53450598.cmd
@echo off
set "Source=C:\test"
set "Target=C:\test\Archive"
PowerShell -Nop -C "Get-ChildItem '%Source%\*.csv'|Copy-Item -Destination {'%Target%\{0} {1:MM-dd-yyyy_HH-mm-ss}.csv' -f $_.BaseName,$_.LastWriteTime} -WhatIf"
如果输出看起来正常,请删除-WhatIf
最后的。
推荐阅读
- logic-programming - Pydatalog,无法打印规则的右侧
- python - 如何根据两个不同列中存在的值转置 DataFrame?
- python - Pandas - DataFrames之间的映射值
- reactjs - 将 FastImage 与我的 react 本机应用程序一起使用时出错
- django - Django/Graphene Mutation 错误“您需要传递有效的 Django 模型”无法修复
- google-chrome-extension - 如何使用 SockJS 连接到服务器
- android - 无法在工作线程上同步获取 firebase id 令牌
- pandas - 具有列表理解的 padas 时间序列中具有滚动窗口最大值的 ValueError
- reactjs - react-hooks 中的内存泄漏问题
- c# - 使用 C# UsbDevice 类时未从 USBTMC 设备获得响应