Как создать пустой файл в командной строке в Windows?
Как создать пустой файл в командной строке DOS или Windows?
пробовал:
copy nul > file.txt
но он всегда показывает, что файл был скопирован.
есть ли другой метод в стандартном cmd?
Это должен быть метод, который не требует touch команда от Cygwin или любые другие нестандартные команды.
Команда должна выполняться из сценария, поэтому нажатия клавиш не могут быть использованы.
30 ответов:
без например, Люк Вю или Ерик Константопулосаточкаиз to:
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:\Users\VonC\prog\tests>aaaa > empty_file 'aaaa' is not recognized as an internal or external command, operable program or batch file. C:\Users\VonC\prog\tests>dir Folder C:\Users\VonC\prog\tests 27/11/2013 10:40 <REP> . 27/11/2013 10:40 <REP> .. 27/11/2013 10:40 0 empty_fileв том же духе Самуил предполагает в комментариях:
самый короткий, который я использую, в основном тот, который Nomad:
.>out.txtэто дает ошибку:
'.' is not recognized as an internal or external commandно эта ошибка находится на stderr. И
>только перенаправляет stdout, где ничего были произведены.
Отсюда и создание пустой. Сообщение об ошибке может быть проигнорировано здесь.
(оригинальный ответ, ноябрь 2009)
echo.>filename(
echo ""на самом деле поставил бы "" в файл! Иechoбез '.'поставил бы "Command ECHO activated" в файле...)Примечание: результирующий файл не пустой но включает в себя последовательность строк возврата: 2 байта.
этой обсуждение указывает на истинное пакетное решение для реального пустой file:
<nul (set/p z=) >filename dir filename 11/09/2009 19:45 0 filename 1 file(s) 0 bytes"
<nul" трубы anulответ наset/pкоманда, которая вызовет переменная останется неизменной. Как обычно, сset/pв строку справа от знака равенства отображается приглашение без CRLF.так как здесь" строка справа от знака равенства " пуста... в результате получается пустой файл.
разница с
cd. > filename(который упоминается в ответ Патрика Каффа и также создает файл длиной 0 байт) заключается в том, что этот " бит перенаправление" (the<nul...трюк) можно использовать для Эхо линии без каких-либо CR:<nul (set/p z=hello) >out.txt <nul (set/p z= world!) >>out.txt dir out.txtкоманда dir должна указывать размер файла как 12 байт:"
hello world!".
Если вы действительно хотите полностью пустой файл, без вывода в stdout, вы можете немного схитрить:
copy nul file.txt > nulпросто перенаправить стандартный вывод в Nul, а выход из копия исчезает.
открыть файл :
type file.txtновый файл :
Way 1 : type nul > file.txt Way 2 : echo This is a sample text file > sample.txt Way 3 : notepad myfile.txt <press enter>изменить содержимое:
notepad file.txtскопировать
copy file1.txt file1Copy.txtпереименовать
rename file1.txt file1_rename.txtудалить файл :
del file.txt
читая комментарии к моему сообщению, я должен признать, что не читал вопрос правильно.
в командной строке Windows одним из способов было бы использовать fsutil:
fsutil file createnew <filename> <size>пример:
fsutil file createnew myEmptyFile.txt 0
ниже для командной строки *nix.
touch filenameэта команда меняет дату изменения файла или создает его, если файл не найден.
echo "" > filenameЯ считаю, что это работает на Windows/DOS, но мой последний опыт с или совсем недавно. Я точно знаю, что он работает в основном на любом POSIX совместимых ОС.
вы можете написать свой собственный сенсорный.
//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; }
cd > filename.cfgработал при создании файла в C:/Program файлы, к которым у вас нет доступа для непосредственного создания файлов.
попробуйте это :
abc > myFile.txtВо-первых, он создаст файл с именемmyFile.txtв текущем рабочем каталоге (в командной строке). Затем он выполнит командуabcкоторая не является допустимой командой. Таким образом, вы получили новый пустой файл с именемmyFile.txt.
type nul>filenameсоздаст новый пустой файл.Извините, что опоздал.
обновление: и
copy nul filenameработает без перенаправления (более очевидное решение).
вы можете использовать старую команду
copy con file_name.extничего не вводите, просто нажмите F6, чтобы сохранить его, однако он будет печатать "файл скопирован", но когда вы откроете файл, он будет пуст
это сработало для меня,
echo > file.extensionвот еще один способ, который я нашел сегодня, есть идеи из других ответов, но он работал
sometext > filename.extensionнапример.
xyz > emptyfile.txt //this would create an empty zero byte text file abc > filename.mp4 //this would create an zero byte MP4 video media fileэто будет показано сообщение об ошибке в командной строке ,
xyzне является внутренней или внешней командой, исполняемой программой или пакетным файлом.но странная вещь, которую я нашел, это то, что файл создается в каталоге, даже если команда не является стандартная команда windows.
Я читал много потоков, но это не самый короткий путь.
пожалуйста, используйте команду:
>copy /b NUL empty_file.txt
просто я пробовал в windows
copy con file.txtнажмите клавишу введите затем нажмите клавишу Ctrl+Zвведите
и это сработало для меня.
для Ubuntu обычно я создаю файл с помощью команды VI
vi file.txtОн откроет файл, а затем нажмите ESC
попробуйте это:
echo $null >> filenameпосмотреть: суперпользователя
На Windows Я пытался сделать это
echo off > fff1.txtи он создал файл с именем fff1.txt С размером файла 0kb
Я не нашел других команд, кроме этой, которые могли бы создать пустой файл.
Примечание: Вы должны быть в папке, которую вы хотите создать файл.
Так что вы можете создать пустой файл с
'' > newfile.txtперейдите в каталог и введите приведенную выше команду в окне PowerShell.
Примечание это не будет работать в командной строке Windows.
сегодня я обнаружил новый:)
это изменит заголовок окна командной строки, но также создаст пустой файл.
title > file.txt
запустите CMD в режиме администратора и введите следующее:
NUL > file_name.extentionили вы набираете это
echo .> file_name.extention
вот еще один способ:
rem/ > file.extСлэш
/обязательно; без него часть перенаправления была закомментированаrem.
- создать файл bat с содержимым
echo '' > %1. (назовите файл как сенсорный.летучая мышь)- добавить папку в переменную PATH.
- вы можете использовать сенсорный для создания файлов. (Например:
touch temp.txtсоздает темп.txt файл)Регистрация этой статьи для получения дополнительной информации.
сначала создайте свой файл так, чтобы он существовал:
echo . > myfile.txtзатем перезаписать созданный файл с пустой версией с помощью :
copy /y nul myfile.txt
echo.|set /p=>file
echo.подавить "команда Эхо активировано"
|set /p=запретить новую строку (и файл теперь 0 байт)
Comments