【问题标题】:Create a backup before deleting each file in a batch file在删除批处理文件中的每个文件之前创建备份
【发布时间】:2013-07-25 11:18:52
【问题描述】:

我有一个文件夹,其中包含多个扩展名为 .txt 的文件。我需要删除它们,但在此之前我需要对其进行备份。

例如,假设我有一个包含以下内容的文件夹:

name1.txt  
name2.txt   
name3.txt   
name4.txt   

我删除后,我的文件夹的内容应该是:

name1.txt.bkup  
name2.txt.bkup  
name3.txt.bkup  
name4.txt.bkup  

如何做到这一点?

【问题讨论】:

  • rename *.txt *.txt.bkup ?
  • 只需将文件重命名为 X.bkup ?
  • 你能把它们放在一个目录里吗?如果没有,则需要构建一个字符串。
  • 我冒昧地编辑了您的标题。不要在使用大写锁定键的情况下发布问题。这不被认为是好的礼仪。
  • @爱德华。对不起。我没有注意到大写锁定已打开!

标签: windows batch-file cmd directory


【解决方案1】:

试试这个:

 for /r "C:\**" %%i  in (*.txt) do  rename %%i %%i.bkup
del *.txt

【讨论】:

  • 这不起作用。 for /r 路径参数不能有通配符。
【解决方案2】:

试试这个:

copy *.txt *.txt.bkup
del *.txt

【讨论】:

    【解决方案3】:

    只需将 .txt 文件重命名为 .txt.bkup,即:

    rename *.txt *.txt.bkup
    

    如果您坚持在删除之前创建备份(例如,可配置的批处理文件,其中创建备份可能会被关闭),那么您可以在删除之前复制文件:

    copy *.txt *.txt.bkup
    del *.txt
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多