Может кто-нибудь помнить, что было командой для создания пустого файла в MSDOS с использованием BAT файла?
Как создать пустой текстовый файл из пакетного файла?
Ответ 1
echo. 2>EmptyFile.txt
Ответ 2
copy NUL EmptyFile.txt
В DOS есть несколько специальных файлов (устройств, фактически), которые существуют в каждом каталоге, NUL
является эквивалентом UNIX /dev/null
: это волшебный файл, который всегда пуст и отбрасывает все, что вы ему пишете. Здесь список других; CON
иногда также полезен.
Чтобы вообще не выводить какой-либо вывод, вы можете использовать
copy /y NUL EmptyFile.txt >NUL
/y
не позволяет copy
задавать вопрос, который вы не видите, когда вывод идет на NUL
.
Ответ 3
type NUL > EmptyFile.txt
Прочитав предыдущие два сообщения, это сочетание двух - это то, с чем я столкнулся. Кажется, немного чище. Не нужно беспокоиться о перенаправлении "1 файла (ов)". сообщение NUL
, как и предыдущее сообщение, и выглядит хорошо рядом с ECHO OutputLineFromLoop >> Emptyfile.txt
, которое обычно будет выполняться в пакетном файле.
Ответ 4
Методы, которые я собрал из других ответов:
Делает 0-байтовый файл очень понятным, обратным образом:
type nul >EmptyFile.txt
через анонимный, Дэнни Бэкетт, возможно, другие, я вдохновлен Работа JdeBP
Файл с 0 байтами другой способ, он обратный-совместимый вид:
REM. >EmptyFile.txt
идея через: Йоханнес
Файл с 0 байтами 3-го способа также совместим с обратной совместимостью:
echo. 2>EmptyFile.txt
через TheSmurf
Файл с 0 байтами систематически возможно доступен со времен Windows 2000:
fsutil file createnew EmptyFile.txt 0
через Emm
Файл с 0 байтами, перезаписывающий файлы readonly
ATTRIB -R filename.ext>NUL
(CD.>filename.ext)2>NUL
через copyitright
Одна новая строка (2 байта: 0x0D 0x0A
в hex-нотация, альтернативно написанная как \r\n
)
echo.>AlmostEmptyFile.txt
Примечание: нет пробелов между echo
, .
и >
.
идея через: Как вы можете эхо обновить строку в пакетных файлах?
edit Кажется, что любая некорректная команда, перенаправленная в файл, создаст пустой файл. хе, особенность! совместимость: uknown
TheInvisibleFeature <nul >EmptyFile.txt
Файл с 0 байтами: неверная команда/со случайным именем (совместимость: uknown):
%RANDOM%-%TIME:~6,5% <nul >EmptyFile.txt
через: great источник для случайного по Hung Huynh
edit 2. Andriy M указывает на наиболее забавный/провокационный способ добиться этого с помощью недействительной команды
Файл с 0 байтами: неверная команда /funky way (совместимость: неизвестно)
*>EmptyFile.txt
идея через: Andriy M
Файл с 0 байтами 4-го уровня:
break > file.txt
через foxidrive благодаря comment Double Gras!
Ответ 5
REM. > empty.file
Ответ 6
Если существует вероятность того, что файл для записи уже существует и доступен только для чтения, используйте следующий код:
ATTRIB -R filename.ext
CD .>filename.ext
Если файла не существует, просто выполните:
CD .>filename.ext
(обновлен/изменен код в соответствии с комментарием DodgyCodeException)
Чтобы устранить любые ошибки, которые могут возникнуть:
ATTRIB -R filename.ext>NUL
(CD .>filename.ext)2>NUL
Ответ 7
fsutil file createnew file.cmd 0
Ответ 8
Еще один, чтобы добавить к книгам - короткий и сладкий тип.
break>file.txt
break>"file with spaces in name.txt"
Ответ 9
Вместо COPY
вы можете использовать команду TYPE
. Попробуйте следующее:
TYPE File1.txt>File2.txt
Где File1.txt
пусто.
Ответ 10
Вы также можете использовать SET
для создания файла с нулевым byte
следующим образом
set x=x > EmptyFile.txt
Или, если вы не хотите создавать дополнительную переменную, переназначьте существующую переменную типа
set PROMPT=%PROMPT% > EmptyFile.txt
или вот так:
set "PROMPT=%PROMPT%" > EmptyFile.txt
Ответ 11
Самый простой способ:
echo. > Filename.txt