【问题标题】:Batch for loop to rename with timestamp and move files from one folder to another one批处理循环以使用时间戳重命名并将文件从一个文件夹移动到另一个文件夹
【发布时间】:2019-11-13 09:07:15
【问题描述】:

我正在尝试使用批处理将 zip 文件从一个文件夹移动到另一个文件夹。我想了解如何完成我的一段代码,以便将 zip 文件从一个文件夹移动到另一个文件夹重命名文件,并在文件名中添加时间戳。

for /f %%a in ('dir /b  \\XXX\XXX\XXX\XXX\XXX\*.zip ^| find /c /v ""') do (

)
EXIT

编辑

在python中我会写这样的东西:

Location = '\\\\XXXX\\XXX\\XXX\\XXX\\XXX\\'
checklist2 = glob.glob(Location + '*.zip')

for filename2 in checklist2:
    NewName = filename2.replace(Location, '')
    NewName = NewName.replace('.ZIP', '')
    shutil.move(filename2, Location + 'Archive\\ZIP Archive\\' + NewName + '_' + time.strftime('%Y%m%d%H%M%S') + '.zip')

【问题讨论】:

  • 您没有提供足够的详细信息。显示您用作输入和预期输出的示例文件。
  • 我正在使用所考虑文件夹中存在的所有 zip 文件
  • 预期输出是将压缩文件从一个文件夹移动到存档文件夹
  • 鉴于预期的输出,move *.zip destinationfolder 有什么问题
  • 好吧,实际上批处理中的 for 循环正在工作,因为我正在使用它。

标签: batch-file


【解决方案1】:

看看这对你有没有帮助:

for %%a in (*) do echo %%~na-%%~ta%%~xa

%%~na 是文件名。
%%~ta 是文件的时间戳。
%%~xa 是文件扩展名。

【讨论】:

  • 不。你打算如何重命名这样的文件?你测试了吗?
  • 我只是想将 OP 推向正确的方向——我并没有尝试编写整个代码。如果 OP 接受这个,尝试编写自己的代码并且有更多问题,那么他们可以进一步编辑他们的问题。我想我认为这个“答案”与尽管问题很差和/或离题的问题仍然试图提供帮助取得了平衡。
  • 这就是问题所在。题外话会导致题外话和不正确的答案,从而导致更多的问题,让越来越多的人感到困惑。预计会提出最少、完整和可验证的问题,并寻求答案。我们都想帮助别人,但我们会花时间免费这样做,如果用户提出不清楚的问题,我们会花更多时间尝试找出更多信息,就像答案一样。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-21
  • 2018-03-28
  • 2010-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多