Vaciar el contenido del archivo especificado sin eliminarlo de la línea de comando
Si está trabajando en la línea de comandos y necesita vaciar rápidamente el contenido de un archivo, puede hacerlo colocando un símbolo más grande que un espacio delante del nombre del archivo en cuestión.
Cómo eliminar el contenido del archivo desde la línea de comando
El truco para eliminar el contenido de un archivo mientras se mantiene el archivo se ve así:
> filename
Este enfoque funciona en bash y muchos otros shells, pero también puede usar una variación de eco si no funciona en zsh u otro shell. Para zsh, use lo siguiente para eliminar el contenido de un archivo de línea de comando usando echo y redirect:
echo -n > filename
Todo el contenido del archivo de destino se eliminará inmediatamente sin previo aviso, dejándolo en blanco, manteniendo la existencia de los archivos, el nombre del archivo y los permisos. Esto suele ser preferible y más rápido que eliminar y volver a crear manualmente un archivo.
Un buen ejemplo práctico es eliminar el contenido de los archivos de registro, por ejemplo:
> ~/Library/Logs/updates.log
O obteniendo el mismo efecto que la redirección de eco:
echo -n > ~/Library/Logs/updates.log
También puede usar este comando para crear un nuevo archivo de 0 bytes en la ubicación, similar a usar el comando táctil.
Esto le resultará especialmente útil si desea mantener los mismos permisos para un archivo en particular, pero desea sobrescribir el contenido, una ocurrencia común con los archivos de registro y similares.