如何在Windows的命令行创建一个空文件?
如何在DOS / Windows命令行中创建一个空文件?
我试过了:
copy nul > file.txt
但它总是显示文件被复制。
标准cmd中是否有其他方法?
它应该是一种不需要Cygwin或任何其他非标准命令的触摸命令的方法。 该命令需要从脚本运行,因此不能使用击键。
如果没有重定向,Luc Vu或Erik Konstantopoulos指出:
copy NUL EMptyFile.txt
copy /b NUL EmptyFile.txt
“如何从批处理文件创建空文本文件?” (2008)也指出:
type NUL > EmptyFile.txt
# also
echo. 2>EmptyFile.txt
copy nul file.txt > nul # also in qid's answer below
REM. > empty.file
fsutil file createnew file.cmd 0 # to create a file on a mapped drive
游牧民提到一个原始的:
C:UsersVonCprogtests>aaaa > empty_file
'aaaa' is not recognized as an internal or external command, operable program or batch file.
C:UsersVonCprogtests>dir
Folder C:UsersVonCprogtests
27/11/2013 10:40 <REP> .
27/11/2013 10:40 <REP> ..
27/11/2013 10:40 0 empty_file
本着同样的精神,塞缪尔在评论中建议:
我使用的最短的一个基本上是游牧民族的那个:
.>out.txt
它确实给出了一个错误:
'.' is not recognized as an internal or external command
但是这个错误在stderr上。 并且>
只重定向标准输出,没有产生任何东西。
因此创建一个空文件。 错误信息在这里可以忽略。
(原文答案,2009年11月)
echo.>filename
( echo ""
居然会把“”的文件中!而echo
无“”会把‘ Command ECHO activated
’的文件中...)
注意:生成的文件不是空的,但包含一个返回行序列:2个字节。
这个讨论指向一个真正的空文件的批处理解决方案:
<nul (set/p z=) >filename
dir filename
11/09/2009 19:45 0 filename
1 file(s) 0 bytes
了“ <nul
”管一个nul
响应于该set/p
命令,这将导致用于保持不变的变量。 像往常一样使用set/p
,等号右边的字符串显示为没有CRLF的提示。
因为这里“等号右边的字符串”是空的......结果是一个空文件。
与cd. > filename
的区别cd. > filename
cd. > filename
(在Patrick Cuff的答案中提到,并且也产生一个0字节长度的文件)是这个“重定向位”( <nul...
trick)可以用来回显没有任何CR的行 :
<nul (set/p z=hello) >out.txt
<nul (set/p z= world!) >>out.txt
dir out.txt
dir命令应该将文件大小指定为12个字节:“ hello world!
”。
尝试这个:
type NUL > 1.txt
这肯定会创建一个空文件。
这是另一种方式:
cd. > filename
链接地址: http://www.djcxy.com/p/30279.html
上一篇: How to create an empty file at the command line in Windows?
下一篇: Is there a way to indicate the last n parameters in a batch file?