如何在DOS/Windows命令行创建一个空文件?
我试着:
copy nul > file.txt
但是它总是显示文件被复制了。
在标准cmd中是否有其他方法?
它应该是一个不需要来自Cygwin或任何其他非标准命令的触摸命令的方法。 该命令需要从脚本运行,因此不能使用击键。
如何在DOS/Windows命令行创建一个空文件?
我试着:
copy nul > file.txt
但是它总是显示文件被复制了。
在标准cmd中是否有其他方法?
它应该是一个不需要来自Cygwin或任何其他非标准命令的触摸命令的方法。 该命令需要从脚本运行,因此不能使用击键。
当前回答
如果你真的想要一个完全空的文件,没有任何输出到stdout,你可以欺骗一点:
copy nul file.txt > nul
只需将stdout重定向为nul, copy的输出就会消失。
其他回答
试试这个:abc > myFile.txt 首先,它将在当前工作目录(在命令提示符中)创建一个名为myFile.txt的文件。然后它将运行命令abc,这是一个无效的命令。通过这种方式,您获得了一个名为myFile.txt的新空文件。
你可以写你自己的触摸。
//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是一个命令,它创建一个文件,并将传递给它的文本作为参数。
例如,如果你想创建一个名为Navin .txt的文件,其中Navin是一个web开发人员。
然后回显“Navin is a web developer in it”> Navin .txt
如果你想要你的新文件完全为空,只需要让字符串为空,就像这样- echo "" > filename.txt"
将用给定的文本创建一个新文件。
这将改变命令行窗口的标题,但也将创建一个空文件。
title > file.txt
还有另一种方法:
rem/ > file.ext
斜杠/是强制的;如果没有它,重定向部分将被rem注释掉。