【问题标题】:See if file exists and rename using Windows command line查看文件是否存在并使用 Windows 命令行重命名
【发布时间】:2018-02-15 15:50:42
【问题描述】:

我花了很多时间试图弄清楚这一点,但我感到非常沮丧。

我要做的就是查看文件是否存在(确实存在),然后重命名它。我在 Windows 10 的命令行中工作。

IF exist C:\content\info.txt (
    ren "C:\content\info.txt" "C:\content\info_new.txt"
) ELSE (
    echo "Couldn't find file."
)

我不断收到错误“命令的语法不正确”。我知道该文件存在,因为我之前运行了以下内容。

if exist C:\content\info.txt echo "info.txt is in C:\content\info.txt."

我将所有这些都直接输入到命令提示符中,而不是从 .bat 文件中调用它。我在这里错过了什么吗?任何帮助将不胜感激。

【问题讨论】:

    标签: windows shell if-statement command-line cmd


    【解决方案1】:

    您需要先进入目录,然后更改文件名。像这样:

    IF exist C:\content\info.txt (
          cd C:\content
          ren info.txt info_new.txt
     ) ELSE (
          echo "Couldn't find file."
     )
    

    【讨论】:

    • 你不知道如何将code 放入 StackOverflow Kevin?
    • 我确实做到了,@Subaz。
    • 绝对没有“需要先转到目录,然后更改文件名”,并且由于没有指示现有的当前目录,您的CD 命令应该是CD /D C:\content。跨度>
    • @Subaz,请参阅Be Nice Policy。与其对发帖人刻薄,不如提出修改建议。
    • @harry,我建议进行相同的编辑,但他拒绝了我的编辑并自己进行了编辑 lmao。那是什么?
    【解决方案2】:

    重命名文件时不必提供完整位置。只需这样做:

     IF exist C:\content\info.txt (
      ren "C:\content\info.txt" "info_new.txt"
     ) ELSE (
     echo "Couldn't find file."
    )
    

    【讨论】:

    • 没问题,兄弟 :) 如果对你有帮助,别忘了给它一个绿色的复选标记 ;)
    【解决方案3】:

    这里是一个班轮,如果文件在那里,就不需要其他了

    IF exist C:\content\info.txt ren C:\content\info.txt info_new.txt
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-25
      • 2012-04-18
      • 2013-08-14
      • 2020-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多