Como criar um arquivo vazio a partir da linha de comando

153

Como posso criar um arquivo vazio na linha de comando?

    
por NES 14.01.2011 / 20:03

6 respostas

191

Use o comando 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.

Exemplo:

touch newfile
    
por Isaiah 14.01.2011 / 20:06
73
> newfile

Também irá criar um arquivo vazio. Se o arquivo já existir, ele será truncado (esvaziado). Para manter o conteúdo do arquivo, use >> para anexar como em:

>> file

Mesmo que o arquivo exista, o conteúdo não será alterado.

Editar : se você não tem nenhum conteúdo para digitar, este é mais rápido:

user@host$ :> newfile
user@host$ :>> new_or_existing_file

Nota. : é o comando aqui. Não faz parte do prompt.

    
por balki 14.01.2011 / 20:38
10
cat /dev/null > file1.ext 

o caminho exato existe também outra maneira

echo "" > file2.ext 

A diferença é file1.ext será zero bytes e file2.ext seria um byte. Você pode verificar isso por

ls -l file*.*
    
por nepsdotin 15.01.2011 / 07:56
7

Usando o editor vim , você também pode criar um arquivo vazio.

vim filename

Em seguida, salve

:wq
    
por nrider 03.04.2012 / 11:41
2

O comando

echo -n > file

cria um arquivo vazio, se sua versão de echo suportar a opção -n.

Ou você pode usar printf

printf '' > file
    
por A.B. 22.06.2015 / 11:47
0

Python one-liner:

$ 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

Basicamente, a implementação em Python de touch .

Podemos reduzir o tempo com isso:

$ python -c 'import sys,os;f=sys.argv[1];'$'\n''with open(f,"a"): os.utime(f,None)' mysecondfile.txt 
    
por Sergiy Kolodyazhnyy 10.07.2017 / 13:17