【问题标题】:Is it possible for a batch file to create a file, but only if the file isn't already there?批处理文件是否可以创建文件,但前提是该文件不存在?
【发布时间】:2010-11-16 09:57:02
【问题描述】:

我想知道批处理文件是否可以在某个位置创建文件,但前提是该位置不存在。

例如,如果相关文件不存在,请创建它。否则,什么都不做。

【问题讨论】:

    标签: file batch-file


    【解决方案1】:

    使用“如果”:

    if not exist c:\test\test.txt type NUL > c:\test\test.txt
    

    【讨论】:

      【解决方案2】:
      echo 2>> c:\test\test.txt
      

      如果 echo 曾经向错误流写入任何内容,您会感到震惊,但我想不出它会在什么情况下......

      【讨论】:

        【解决方案3】:
        if not exist C:\test\test.txt copy NUL C:\test\test.txt
        

        (而且输入这些路径真的很难。我想我已经有几年没有接触过驱动器根目录下的任何东西了。你是不是也出于习惯在 Unix 系统上使用 / 创建文件?)

        【讨论】:

          【解决方案4】:

          如果不存在 C:\test\test.txt 回显(你想在此处的文件中)>>C:\test\test.txt

          【讨论】:

            【解决方案5】:

            以下是使用批处理文件创建文件的方法:

            if not exist "C:\folder\test file.txt" goto create
            exit
            :create
            echo Your>"C:\folder\test file.txt"
            echo Text>>"C:\folder\test file.txt"
            echo Here>>"C:\folder\test file.txt"
            

            如果您愿意,可以将exit 替换为处理现有文件的代码。

            如果文件存在,什么都不会发生。 如果该文件不存在,将创建一个带有文本的文件:

            Your
            Text
            Here
            

            它有效。我测试过了。

            【讨论】:

            • 我可以问一下为什么这会被否决吗?这似乎是这次对话中的最佳答案。
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2013-04-27
            • 2013-08-28
            • 2011-03-02
            • 2010-11-28
            相关资源
            最近更新 更多