有人记得在MSDOS中使用BAT文件创建空文件的命令是什么吗?


当前回答

如果有可能要写入的文件已经存在并且是只读的,请使用以下代码:

ATTRIB -R filename.ext
CD .>filename.ext

如果不存在文件,只需执行:

CD .>filename.ext

(根据DodgyCodeException的注释更新/更改代码)

抑制可能出现的任何错误:

ATTRIB -R filename.ext>NUL
(CD .>filename.ext)2>NUL

其他回答

有无限种方法。

无输出的命令:

break
cls
color
goto
pushd
popd
prompt
title

奇怪的命令:

CD.
REM.
@echo off
cmd /c
START >FILE

过时的print命令生成一个空文件:

print /d:EMPTY_TEXT_FILE nul

如果有可能要写入的文件已经存在并且是只读的,请使用以下代码:

ATTRIB -R filename.ext
CD .>filename.ext

如果不存在文件,只需执行:

CD .>filename.ext

(根据DodgyCodeException的注释更新/更改代码)

抑制可能出现的任何错误:

ATTRIB -R filename.ext>NUL
(CD .>filename.ext)2>NUL
echo. 2>EmptyFile.txt
copy NUL EmptyFile.txt

DOS在每个目录中都有一些特殊的文件(实际上是设备),NUL相当于UNIX的/dev/null:它是一个神奇的文件,总是空的,并丢弃您写入其中的任何内容。这里有一些其他的列表;CON有时也很有用。

为了避免任何输出,您可以使用

copy /y NUL EmptyFile.txt >NUL

/y防止copy问一个当输出转到NUL时你看不到的问题。

fsutil file createnew file.cmd 0