如何在DOS/Windows命令行创建一个空文件?

我试着:

copy nul > file.txt

但是它总是显示文件被复制了。

在标准cmd中是否有其他方法?

它应该是一个不需要来自Cygwin或任何其他非标准命令的触摸命令的方法。 该命令需要从脚本运行,因此不能使用击键。


当前回答

你还可以用:

echo. 2>foo

echo的调试输出。几乎肯定是空的。

其他回答

echo. | set /p=>file

的回声。抑制“命令ECHO激活”

| set /p=阻止换行(现在文件是0字节)

你可以写你自己的触摸。

//touch.cpp
#include <fstream>
#include <iostream>

int main(int argc, char ** argv;)
{
  if(argc !=2)
  {
    std::cerr << "Must supply a filename as argument" << endl;
    return 1;
  }
  std::ofstream foo(argv[1]);
  foo.close();
  return 0;
}
echo "" > filename

我相信这适用于Windows/DOS,但我最后一次使用这两种操作都是很久以前的事了。我确实知道一个事实,它基本上适用于任何POSIX兼容的操作系统。

我刚刚在Windows中尝试过:

copy con file.txt

然后按Enter键。然后按“Ctrl + Z”,按“Enter”。

这对我很有效。

对于Ubuntu,我通常使用vi命令创建一个文件

vi file.txt

它将打开文件。然后按“Esc”键。然后输入:wp并按Enter键。它将创建一个包含空数据的新文件。

这将改变命令行窗口的标题,但也将创建一个空文件。

title > file.txt