Come svuotare o cancellare il contenuto di un file UNIX esistente

Se si desidera svuotare il contenuto di un file UNIX, è possibile eliminarlo e ricrearlo, ma, come è tipico di UNIX, esistono alternative più eleganti. Ecco un paio di modi per scaricare l'interno di un file. Se ne conosci altri, aggiungili ai commenti.


Il file speciale / dev / null può e non contiene nulla. Anche se il più delle volte viene usato come un sink of nothingness, ad esempio scrivendo un output che non vuoi mantenere, può essere usato anche come sorgente del nulla. Per sostituire il contenuto del file blah.txt con niente, puoi usare il comando

cat / dev / null> blah.txt

Questo comando ha senso poiché utilizza il reindirizzamento UNIX standard per posizionare il contenuto di un file (uno noto vuoto) in un altro file. Un altro modo per farlo, anche se un modo meno ovvio e probabilmente meno leggibile in uno script di shell da parte di altri, è

> blah.txt