Как создать пустой файл из командной строки

142

Как создать пустой файл из командной строки?

    
задан NES 14.01.2011 в 20:03
источник

6 ответов

178

Используйте команду touch :

The touch utility sets the modification and access times of files to the
current time of day. If the file doesn't exist, it is created with
default permissions.

Пример:

touch newfile
    
ответ дан Isaiah 14.01.2011 в 20:06
источник
68
> newfile

Будет также создать пустой файл. Если файл уже существует, он будет усечен (опустел). Чтобы сохранить содержимое файла, используйте >> для добавления:

>> file

Даже если файл существует, содержимое будет не тронуто.

Изменить . Если у вас нет содержимого для ввода, это быстрее:

[email protected]$ :> newfile
[email protected]$ :>> new_or_existing_file

Примечание. : - это команда здесь. Он не является частью подсказки.

    
ответ дан balki 14.01.2011 в 20:38
9
cat /dev/null > file1.ext 

точный способ есть и другой способ

echo "" > file2.ext 

Разница заключается в том, что file1.ext будет равен нулю, а file2.ext будет одним байтом. Вы можете проверить это на

ls -l file*.*
    
ответ дан nepsdotin 15.01.2011 в 07:56
6

Используя редактор vim , вы также можете создать пустой файл.

vim filename

Затем сохраните

:wq
    
ответ дан nrider 03.04.2012 в 11:41
2

Команда

echo -n > file

создает пустой файл, если ваша версия echo поддерживает ключ -n.

Или вы можете использовать printf

printf '' > file
    
ответ дан A.B. 22.06.2015 в 11:47
0

Однострочный Python:

$ python -c 'import sys,os;f=sys.argv[1];os.utime(f,None) if os.path.exists(f) else open(f,"a").close' myfile.txt

В принципе, реализация python touch .

Мы можем сделать это короче:

$ python -c 'import sys,os;f=sys.argv[1];'$'\n''with open(f,"a"): os.utime(f,None)' mysecondfile.txt 
    
ответ дан Sergiy Kolodyazhnyy 10.07.2017 в 13:17